Systems, methods, and devices for scanning broadcasts

ABSTRACT

The various embodiments disclosed herein provide methods, systems, and devices for capturing broadcast streams, analyzing the broadcast streams to obtain information about the media content transmitted in the broadcast streams, obtaining additional information about the media content if available, and assigning a unique event identifier specific to the instance of broadcast of the broadcast stream and/or media segment transmitted in the broadcast stream. In other embodiments, the unique event identifier is broadcasted to broadcast receiving devices. With the unique event identifier, broadcast receiving devices can access the obtained information associated with the media content.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit under 35 U.S.C. 119(c) toU.S. Provisional Application No. 61/026,433, filed Feb. 5, 2008, whichis hereby incorporated by reference in its entirety, includingspecifically but not limited to the systems, methods, and devicesrelating to scanning broadcasts.

BACKGROUND

Field

The disclosure relates generally to the field of broadcasting, and inparticular methods, systems, and devices for scanning broadcasts.

Description of the Related Art

The traditional broadcasting industry, including radio and television,is a multi-billion dollar industry with hundreds of millions oflisteners, viewers, and users. Traditional broadcasting is generally aone way medium wherein content and/or data is distributed frombroadcasters to users. The same is generally true for new broadcastmediums, such as Internet broadcasting, podcasting, and the like.Additionally, when a user is watching or listening to media on a mediaplayer, such as an IPOD®, the ability to interact with such broadcastsis limited. New technologies are being developed to allow users tointeract with both traditional and new broadcast media.

SUMMARY

In certain embodiments, a centralized broadcast scanning systemcomprising: a stream scanner module fixed at a specific location, thestream scanner module configured to receive a plurality of broadcaststreams from a plurality of broadcast sources, wherein each of theplurality of broadcast streams comprise at least a media content; adedicated scanning system module configured to periodically sample aspecific broadcast stream from a specific broadcast source and toreceive at least one alternate data stream pertaining to the mediacontent in the specific broadcast stream, wherein the alternate datastream is from at least one alternate source; a stream analysis moduleconfigured to process the specific broadcast stream to determine anidentification of the media content in the specific broadcast stream,wherein the determination is based at least on the media content and thealternate data stream; a data mining and reporting system moduleconfigured to generate a database entry comprising at least theidentification of the media content from the stream analysis module; acentral management module configured to assign the media content aunique event identifier, wherein the unique event identifier is uniqueto a specific instance of the media content in the specific broadcaststream; a media storage database module configured to store in the mediastorage database at least the unique event identifier and the databaseentry, wherein the unique event identifier is database linked to thedatabase entry; and a device monitoring module configured to access froma plurality of user devices the specific broadcast stream received byeach of the plurality of user devices, to communicate to a specific userdevice the unique event identifier of each specific instance of themedia content in the specific broadcast stream received by the specificuser device and to obtain from the specific user device at least one ofthe unique event identifiers communicated to the specific user device,wherein the unique event identifier obtained is used to obtain thedatabase entry in the storage database.

In some embodiments, a distributed broadcast scanning system comprising:a central management module configured to electronically communicatewith a plurality of broadcast receiving devices, wherein each broadcastreceiving device comprises at least: a stream scanner module configuredto receive a specific broadcast stream from a broadcast source, whereinthe broadcast stream comprises at least a media content and anassociated data linked to the media content; a stream analysis moduleconfigured to analyze the specific broadcast stream to determine anidentification of the media content in the specific broadcast stream,wherein the determination is based at least in part on the associateddata; a distributed scanning management system module configured togenerate a database entry comprising at least the identification of themedia content from the stream analysis module and to transmit thedatabase entry to the central management module; the central managementmodule is further configured to comprise at least: a management moduleconfigured to process the database entry and to assign the media contenta unique event identifier, wherein the unique event identifier is uniqueto a specific instance of the media content in the specific broadcaststream; a media storage database module configured to store in a mediastorage database at least the unique event identifier and the databaseentry, wherein the unique event identifier is database linked to thedatabase entry; and a device monitoring module configured to transmitthe unique identifier to at least one of the plurality of broadcastreceiving devices.

In certain embodiments, a method for uniquely identifying media,comprising in no particular order; obtaining a transmission of a mediasegment; analyzing the media segment to identify the content; assigninga unique identifier that uniquely identifies the specific instance oftransmission of the media segment; storing the unique identifier in adatabase and at least part of the analyses of the media segmentidentifying the content of the media segment; transmitting the uniqueidentifier to a plurality of user devices accessing the media segment;and obtaining from at least one of the plurality of user device a userinteraction with the media segment and at least the unique identifierassociated with the specific instance of the transmission of the mediasegment.

In some embodiments, a method for uniquely identifying media, comprisingin no particular order; obtaining a data stream associated with atransmission of a media segment; extracting at least an associated datafrom the data stream; analyzing the associated data extracted from thedata stream; assigning a unique identifier that uniquely identifies thespecific instance of the transmission of the media segment; and storingthe unique identifier in a database and at least part of the analyses ofthe associated data extracted from the data stream; transmitting theunique identifier to a plurality of user devices accessing the mediasegment; and obtaining from at least one of the plurality of user devicea user interaction with the media segment and at least the uniqueidentifier associated with the specific instance of the transmission ofthe media segment.

In certain embodiments, a method for associating a unique identifierspecific to a instance of a media segment in a data stream with themedia segment in a user device, the method comprising: obtaining atransmission of the media segment from a broadcast source; transmittingat least enough data to identify the broadcast source to a broadcastscanning system; accessing from the broadcast scanning system the datastream associated with the media segment; extracting from the datastream at least the unique identifier specific to the instance of themedia segment; presenting at least the specific instance of the mediasegment to a user of the user device; detecting a user input regardingthe specific instance of the media segment; and transmitting at leastthe unique identifier specific to the instance of the media segment.

For purposes of this summary, certain aspects, advantages, and novelfeatures of the invention are described herein. It is to be understoodthat not necessarily all such advantages may be achieved in accordancewith any particular embodiment of the invention. Thus, for example,those skilled in the art will recognize that the invention may beembodied or carried out in a manner that achieves one advantage or groupof advantages as taught herein without necessarily achieving otheradvantages as may be taught or suggested herein.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features will now be described with reference to thedrawings summarized below. The drawings and the associated descriptionare provided to illustrate one or more preferred embodiments of theinvention, and not to limit the scope of the invention.

FIG. 1 illustrates a high-level block diagram of one embodiment of abroadcast system comprising a broadcast scanning system.

FIG. 2 illustrates a block diagram of one embodiment of a broadcastsystem with an expanded view of one embodiment of a broadcast source.

FIG. 3 illustrates a block diagram of one embodiment of a broadcastscanning system with an expanded view of one embodiment of the broadcastscanning system.

FIG. 3A illustrates a block diagram depicting one embodiment of acomputer system configured to run software for implementing one or moreembodiments of the broadcast scanning system.

FIG. 4 illustrates a flow-chart diagram of one embodiment of a method ofscanning broadcast streams.

FIG. 5 illustrates one embodiment of a broadcast system wherein thebroadcast scanning system comprises a centralized broadcast scanningsystem.

FIG. 6 illustrates a block diagram of one embodiment of a broadcastsystem wherein the broadcast scanning system comprises a distributedbroadcast scanning system.

FIG. 7 illustrates a block diagram of one embodiment of a broadcastsystem wherein a broadcast scanning system comprises a centralizedscanning system combined with a distributed broadcast scanning system.

FIG. 8 illustrates a flow-chart diagram of one embodiment of a method ofscanning, analyzing, storing broadcast streams and/or furthercommunicating with broadcast receiving devices.

FIG. 9 illustrates one embodiment of various types of data that arestored in the media storage device and/or are related to a broadcaststream.

FIG. 10 illustrates one embodiment of various types of data that arestored in the media storage device and/or are related to a broadcastreceiving device.

FIG. 11 illustrates one embodiment of a broadcast scanning systemcomprising a broadcast response and business system.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Although several embodiments, examples and illustrations are disclosedbelow, it will be understood by those of ordinary skill in the art thatthe invention described herein extends beyond the specifically disclosedembodiments, examples and illustrations and includes other uses of theinvention and obvious modifications and equivalents thereof. Embodimentsof the invention are described with reference to the accompanyingfigures, wherein like numerals refer to like elements throughout. Theterminology used in the description presented herein is not intended tobe interpreted in any limited or restrictive manner simply because it isbeing used in conjunction with a detailed description of certainspecific embodiments of the invention. In addition, embodiments of theinvention can comprise several novel features and no single feature issolely responsible for its desirable attributes or is essential topracticing the inventions herein described.

The various embodiments disclosed herein provide methods, systems, anddevices for capturing broadcast streams, analyzing the broadcast streamsto obtain information about the media content transmitted in thebroadcast streams, obtaining additional information about the mediacontent if available, and assigning a unique event identifier specificto the instance of broadcast of the broadcast stream and/or mediasegment transmitted in the broadcast stream. In other embodiments, theunique event identifier is broadcasted to broadcast receiving devices.With the unique event identifier, broadcast receiving devices can accessthe obtained information associated with the media content.

The terms “broadcast” or “broadcast stream” or “broadcast signal” or“media stream” as used herein are interchangeable and the terms broadlyrefer to, without limitation, data, information or programmingdistributed over a wide variety of media such as terrestrial radio,over-the-air (or terrestrial) television, cable, satellite, internet,Wi-Fi, Bluetooth, cellular and/or mobile networks, peer-to-peernetworks, Local Area Networks (LAN's), Wide Area Networks (WAN's),combinations of the same, or the like. Broadcasts, broadcast streams,broadcast signals and/or media streams can be of the type, withoutlimitation, textual, audio-visual, and/or visual, and/or can comprisecontent such as television shows, movies, news, radio programming,advertisements, public announcements, news, pictures, videos, letters,emails, podcasts, combinations of the same, or the like.

The terms “broadcast source” or “broadcaster” are interchangeable asused herein, and all terms broadly comprise systems and/or devices thattransmit broadcast streams, comprising without limitation broadcaststations and/or towers that transmit radio and/or television signals,servers and/or other devices that push data feeds over wired and/orwireless networks, such as the internet, LAN's, WAN's, combinations ofthe same, or the like.

The terms “scanning” or “scan” as used herein broadly refer to theprocess of capturing any type of broadcast from the source and/or from adata stream, comprising broadcast streams from broadcast systems. Theterms “scanner” and “broadcast scanning system” are interchangeable andbroadly refer to devices that are capable of capturing a broadcast. Ascanner can be without limitation incorporated into other devices, suchas televisions, radios, computers, laptops, cell phones and/or otherwireless devices, PDAs, cable and/or satellite boxes, combinations ofthe same, or the like.

As used herein, the terms “broadcast receiving device” or “broadcastreceiving system” refers to any device or plurality of devices that arecapable of receiving broadcast streams, and a broadcast receiving devicecan without limitation be incorporated into other devices, such as apersonal computer, a laptop computer, a cellular phone, a GPS system, aBlackberry® device, a portable computing device, a server, a computerworkstation, a local area network of individual computers, aninteractive kiosk, a personal digital assistant, an interactive wirelesscommunications device, a digital media player, a handheld computer, anembedded computing device, cable and/or satellite boxes, other homeand/or audio entertainment devices, combinations of the same, or thelike. Broadcast receiving devices can also comprise a scanner.

As used herein, the terms “data stream,” “alternate broadcast stream,”“alternate broadcast signal,” “alternate data stream,” “other mediastream,” “other data stream,” “subcarrier data stream,” “accompanyingstream,” “associated data stream,” “IP data stream,” or “closedcaptioning data stream” broadly refer to any type of data or informationpertaining to a broadcast stream. Data stream, alternate broadcaststream, alternate broadcast signal, alternate data stream, other mediastream, other data stream, subcarrier data stream, accompanying stream,associated data stream, IP data stream and/or closed captioning datastream can be of the type, without limitation, ancillary data pertainingto a media stream such as: Internet Protocol's, XML, SOAP, PERL, J2ME,JAVA, GPRS, HSDPA/UMTS/3G, RBDS, RDS, DARC, GPRS, Program AssociatedData (PAD), In Band On Channel (IBOC), Digital Radio Mondiale (DRM),digital radio, digital television, streaming media, open or closedcaptioning and/or transcripts, combinations of the same, or the like.

The terms “broadcast network,” “network,” or “communications medium” asused herein are interchangeable and refer to any type of communicationsmedium (unidirectional and/or bidirectional) wherein a broadcastsource(s), a broadcast receiving device(s), and/or a broadcast scanningdevice(s) can communicate with the internet and/or other third partydatabases. For example, in a radio broadcast network, a radio stationtransmits radio broadcast signals to a plurality of radio receivers.Broadcast networks comprise mono-directional systems and/orbi-directional systems. Other examples of broadcast networks comprisebut are not limited to broadcasting to broadcast receiving devicesand/or scanners over airwaves, subcarrier channels and/or frequencies,cable and/or satellite, cellular and/or wireless connections, internet,virtual private network (VPN) connections over the internet, privatenetworks (for example, ISDN, T1, combinations of the same, or the like),wireless and/or wired direct connections between two or more devices,combinations of the same, or the like.

The term “unique event identifier,” as used herein is a broad term thatrefers to any means for identifying a specific instance of the broadcaststream. In certain embodiments, a broadcaster may generate its own“broadcaster media event identifier” that may be specific to theinstance of the broadcast, and/or that is separate from the “uniqueevent identifier.”

The terms “digital fingerprint” or “fingerprint” as used herein cancomprise without limitation least-squares spectral analysis (LSSA),hash-sums, wave form analysis, spectral analysis, harmonic analysis,watermarking, combinations of the same, or the like. As used herein, theterm “media content” refers to content being broadcasted in thebroadcast stream. For example, media content can comprise a song, avideo, a program, a show, an advertisement, combinations of the same, orthe like.

The terms “computer,” “computer server,” “computing system,” “computerclients,” “servers,” or “computing system devices,” as used herein areinterchangeable terms, and the terms broadly refer, without limitation,to a machine that manipulates data according to a list of instructions,combinations of the same, or the like.

FIG. 1 is a high-level block diagram illustrating one embodiment of abroadcast system 100. As illustrated, the broadcast system 100 comprisesa broadcast source 120, a broadcast receiving system 140, a broadcastscanning system 160, third party databases 143 and a network 180. In theillustrated embodiment of FIG. 1, the broadcast source 120, thebroadcast receiving system 140, third party databases 143, and thebroadcast scanning system 160 communicate with each other through thenetwork 180.

With reference to FIG. 1, the broadcast source 120, in one embodiment,can be a radio station; the broadcast receiving system 140 can compriseone or more radio tuners; and/or the broadcast scanning system 160 canbe a standalone device, wherein both the radio tuners and/or the scannerare configured to receive a broadcast stream 121 from the radio station120. In FIG. 1, the broadcast source 120 is located at a distance fromthe broadcast receiving system 140 and/or the broadcast scanning system160. In other embodiments, the broadcast source 120, the broadcastreceiving system 140, and the broadcast scanning system 160 can be onthe same device, for example, a media player. In some embodiments, thebroadcast receiving device 140 and the broadcast scanning system 160 canbe on the same device. For example, the broadcast receiving device 140can be a cellular phone that is enabled to receive radio and/ortelevision broadcast streams 121, and the cellular phone is alsoconfigured to be a scanner that scans the broadcast stream 121 beingreceived.

Referring to FIG. 1, the broadcast stream 121 can be transmitted usingthe airwaves, subcarrier channels and/or frequencies, satellite, cable,cellular, wireless, internet, wired direct connections between two ormore devices, combinations of the same, or the like. In otherembodiments, the broadcast source 120 may transmit a broadcast stream inconformance with various radio standards, such as the Radio BroadcastData System (RBDS) standard. The broadcast source 120 may transmit thebroadcast stream 121 in many other forms, comprising satellite radio,satellite television, radio, cable television, internet, digital radio,IP data streams, media being played on media devices, such as an IPOD,combinations of the same, or the like.

In one embodiment, network 180 uses the same communication means toenable communication between broadcast source 120, broadcast receivingdevice 140 and broadcast scanning system 160. Network 180 can use aplurality of communication means to enable communication betweenbroadcast source 120, broadcast receiving device 140 and/or broadcastscanning system 160. In some embodiments, the communication means innetwork 180 between broadcast source 120 and broadcast receiving device140 is distinct from the communication means in network 180 betweenbroadcast scanning system 160 and broadcast receiving device 140. Incertain embodiments, the communication means in network 180 frombroadcast scanning system 160 and broadcast receiving device 140 isdistinct from the communication means in network 180 from broadcastreceiving device 140 and broadcast scanning system 160. In oneembodiment, the communication means in network 180 from broadcastscanning system 160 and broadcast receiving device 140 is the same asthe communication means in network 180 from broadcast receiving device140 and broadcast scanning system 160. In some embodiments, thecommunication means in network 180 to enable communication betweenbroadcast source 120, broadcast receiving device 140 and broadcastscanning system 160 are all unidirectional communication means. In oneembodiment, the communication means in network 180 to enablecommunication between broadcast source 120, broadcast receiving device140 and broadcast scanning system 160 are all bidirectionalcommunication means. In certain embodiments, the communication means innetwork 180 to enable communication between broadcast source 120,broadcast receiving device 140 and broadcast scanning system 160 are amixture of unidirectional communication means and bidirectionalcommunication means. In one embodiment, the communication means innetwork 180 to enable communication between broadcast source 120,broadcast receiving device 140 and broadcast scanning system 160 areinitiated by a request from the receiving device. In some embodiments,the communication means in network 180 to enable communication betweenbroadcast source 120, broadcast receiving device 140 and broadcastscanning system 160 are initiated by the sending device. In oneembodiment, the communication means in network 180 to enablecommunication between broadcast source 120, broadcast receiving device140 and broadcast scanning system 160 are initiated by a mixture ofrequests from the receiving device and initiation of communication bythe sending device. In certain embodiments, the broadcast scanningsystem 160 operation is independent from the operation of the broadcastsource 120. In one embodiment, the broadcast scanning system 160operation is coordinated with the operation of the broadcast source 120.In some embodiments, the communication means in network 180 to enablecommunication between broadcast source 120, broadcast receiving device140 and broadcast scanning system 160 is a public broadcast. In oneembodiment, the communication means in network 180 to enablecommunication between broadcast source 120, broadcast receiving device140 and broadcast scanning system 160 is a private communication. Incertain embodiments, the communication means in network 180 to enablecommunication between broadcast source 120, broadcast receiving device140 and broadcast scanning system 160 is mixture of public broadcast andprivate communication. In one embodiment, some or all of thecommunication means in network 180 to enable communication betweenbroadcast source 120, broadcast receiving device 140 and broadcastscanning system 160 are encrypted.

Broadcast stream 121, broadcast receiver link 141, third party databaselink 142 and/or broadcast scanning system link 161 represent the datathat flows from their respective sources, through the communicationmeans 180 to their destinations and the data that flows to theirrespective destinations from their sources. The nature of the data, theprotocols used to transmit the data and whether the data isunidirectional or bidirectional depends on the nature of the source,destination, communication means 180 and the data being transmitted.

FIG. 2 illustrates a block diagram of one embodiment of a broadcastsystem 200, comprising an alternate broadcast source 130 and anillustration of one embodiment of the structural elements of thebroadcast source 120. The broadcast source 120 comprises a digital dataencoder module 210, a transmission module 220, an alternativetransmission module 230, and a broadcast data preparation module 240.

In general, the word “module” as used herein refers to logic embodied inhardware and/or firmware, and/or to a collection of softwareinstructions, possibly having entry and/or exit points, written in aprogramming language, such as, for example, Java, and/or the JavaPlatform-Micro Edition (Java ME, and/or J2ME), comprising the JavaSpecification Request 234 (JSR 234) Advanced Multimedia Supplements, anapplication program including pseudocode interpretable instructions,WAP, HTML, combinations of the same, or the like. Other programminglanguages comprise without limitation COBOL, CICS, Lua, C, C++, C#,Perl, VB.Net, PHP, mySQL and/or SQL. A software module may be compiledand/or linked into an executable program, installed in a dynamic linklibrary, and/or may be written in an interpreted programming languagesuch as, for example, BASIC, Perl, and/or Python. It will be appreciatedthat software modules may be callable from other modules and/or fromthemselves, and/or may be invoked in response to detected events and/orinterrupts. Software instructions may be embedded in firmware, such asan EPROM. It will be further appreciated that hardware modules maycomprise connected logic units, such as gates and/or flip-flops, and/ormay comprise programmable units, such as programmable gate arrays and/orprocessors. The modules described herein can be implemented as softwaremodules, and/or may be represented in hardware and/or firmware.Generally, the modules described herein refer to logical modules thatmay be combined with other modules and/or divided into sub-modulesdespite their physical organization and/or storage.

In reference to FIG. 2, the broadcast data preparation module 240prepares data for broadcast transmission. In one embodiment, theprepared data contains information pertaining to the broadcast stream121 that the broadcast source 120 transmits using the broadcast scanningsystem 160 and/or the broadcast receiving system 140. For example, thebroadcast data preparation module 240 may prepare data for the broadcastsource 120 containing the title of a song and/or name of an artist tobroadcast in concert with a music piece, and/or the name of a productand/or the associated advertiser. Other information that the broadcastdata preparation module 240 can prepare for the broadcast source 120 maycomprise data such as the album containing the aired song, a purchaseprice for content and/or advertised products, a purchase location,closest merchant, a content identifier and/or a broadcaster media eventidentifier specific to the instance of broadcast to later recall theparticular transmission from a media storage database.

The broadcast source 120 illustrated in FIG. 2 comprises the digitaldata encoder module 210, which can be configured to generate signals forthe broadcast source 120 to transmit along with the regular broadcaststream. In one embodiment, the digital data encoder module 210 generatessignals in compliance with the REDS and/or Radio Data System (RDS)standard to accompany the broadcast stream 121. The digital data encodermodule 210 generates a 57 kHz “subcarrier” signal that modulates alongwith an FM station broadcast signal and can be demodulated by specialdecoders. Commercially available RBDS encoders usually acceptinformation via IP data ports, serial and/or parallel data ports andformat the information into the appropriate RBDS block type. The digitaldata encoder module 210 of FIG. 2 can also represent systems that can beconfigured to generate other types of accompanying data, comprisingthose in accordance with RDS, Data Radio Channel (DARC), Digital AudioBroadcasting (DAB), Digital Multimedia Broadcasting (DMB), Digital VideoBroadcast-Handhelds (DVB-H), In Band on Channel (IBOC), Digital RadioMondiale, combinations of the same, or the like. In one embodiment, thedigital data encoder module 210 generates closed captioning data streamto accompany a television broadcast.

The digital data encoder module 210 can generate signals for thebroadcast source 120 to transmit, whereby the generated signals aretightly integrated into the broadcast stream 121. For example, thedigital data encoder module 210 can integrate various transmission forms(for example, Radio Data Service as a sub-carrier to an FM broadcast).The digital data encoder module 210 can also generate discretetransmission signals for the broadcast source 120 to transmit wherebythe generated signals are loosely integrated with the broadcast stream121 that the broadcast source 120 transmits. One example of discretetransmission is a generated signal that travels using a distinctlydifferent transmission method from the broadcast stream 121 (forexample, satellite radio and/or internet). Various combinations of thetwo methods above (tightly integrated transmission methods and discreettransmission methods) may be employed. The broadcast stream 121 that istransmitted by the broadcast source 120 can be in multiple forms usingdifferent aspects of the two methods.

The broadcast source 120 also comprises the transmission module 220,which transmits the primary broadcast streams for the broadcast source120. For example, the transmission module 220 transmits radio signalsfor a radio station. In one embodiment, the transmission module 220transmits television signals for a television station. The transmissionmodule 220 can be configured to transmit the broadcast stream 121 overmany other forms, comprising without limitation satellite radio,satellite television, radio, cable television, internet, digital radio,IP data streams, media being played on a digital media devices such asthe IPOD, combinations of the same, or the like.

The broadcast source 120 may also comprise the alternate transmissionmodule 230. The alternate transmission module enables the broadcastsource 120 to transmit broadcast signals that are in a different formthan the primary broadcast stream transmitted by the broadcast source120. For example, the broadcast source 120 can be a television stationthat primarily broadcasts analog or digital television signals that aretransmitted through airwaves. The primary broadcast stream transmittedby the broadcast source 120 may or may not contain a subcarriergenerated by the digital data encoder module 210 (for example, closedcaptioning). The primary broadcast is transmitted by the transmissionmodule. The alternate transmission module enables the broadcast source120 to transmit the television broadcast over a different medium, forexample, the internet, satellite, cable, cellular wireless and/or otherwireless transmission, combinations of the same, or the like.

FIG. 2 also illustrates the alternate broadcast source 130 thattransmits the alternate broadcast stream 131 to the broadcast receivingsystem 140 and the broadcast scanning system 160 via the network 180.The alternate broadcast source 130 can comprise similar characteristicsas the broadcast source 120, and/or can comprise many sources ofbroadcast, for example, FM radio, cable television, satellite radio,internet, digital radio, IP data streams, combinations of the same, orthe like. Although FIG. 2 shows three broadcast sources 120 and onealternate broadcast source 130, it will be recognized that any number ofsystems can provide a broadcast. Further, it will also be recognizedthat the broadcast scanning system 160 and/or the broadcast receivingsystem 140 in FIG. 1 and FIG. 2 and other figures can receive abroadcast from the broadcast source 120, alternate broadcast 130, andany other broadcast sources that may be present in the system.

As FIG. 1 further illustrates, the broadcast receiving system 140receives transmissions of the broadcast stream 121 from the broadcastsource 120 using link 141. Any number of broadcast receiving devicescapable of receiving a broadcast stream can comprise the broadcastreceiving system 140. In one embodiment, the broadcast receiving devices140 comprise personal computers, laptop computers, cellular phones,wireless devices, GPS systems, Blackberry® devices, portable computingdevices, servers, computer workstations, local area network ofindividual computers, interactive kiosks, personal digital assistants,personal digital media players, interactive wireless communicationsdevices, handheld computers, embedded computing device, combinations ofthe same, or the like. In other embodiments, the broadcast receivingdevices 140 can comprise television sets, radio receivers, mobile mediadevices, cable boxes, satellite receivers, other home and/or audioentertainment devices, combinations of the same, or the like.

In FIG. 2, the broadcast receiving system 140 is in communication withthe broadcast scanning system 160 via the network 180. The broadcastscanning system 160 can receive device broadcast stream 141 from thebroadcast receiving system 140. For example, the broadcast scanningsystem 160 can obtain the status of the broadcast receiving system 140(for example, the on/off status of the device, a change of broadcaststation request by a user, an identification of the program mediacontent currently playing on the device, activities generated by theuser in response to the broadcast stream, whether a radio or a digitalmedia player is on, combinations of the same, or the like.) from thebroadcast receiving devices 140.

Referring to FIG. 2, the broadcast scanning system 160 can also capturethe broadcast stream being received by the broadcast receiving system ordevice 140, thereby allowing the broadcast scanning system 160 to trackthe specific broadcast stream being received by the broadcast receivingdevices 140. The broadcast receiving system 140 can also be configuredto receive a content identifier, a broadcaster media event identifier, aunique event identifier and/or any combination of identifiers from thebroadcast scanning system 160. In one embodiment, the broadcast scanningsystem 160 conducts an analysis of the broadcast stream 121 to determinethe media content within the broadcast stream 121, assigns a uniqueevent identifier to the specific instance of the broadcast stream,and/or sends the unique event identifier along with any other relevantinformation from the broadcast scanning system 160 to the broadcastreceiving devices 140 that are receiving the broadcast stream 121 fromthe broadcast source 120.

With reference to FIG. 1, the broadcast scanning system 160 depicted inFIG. 1 scans the broadcast stream 121 transmitted by the broadcastsource 120. In one embodiment, the broadcast scanning system 160captures various broadcast streams 121 comprising analog/digital radioand/or television transmissions; satellite and/or cable transmissions;internet, Wi-Fi and/or peer-to-peer broadcasts; combinations of thesame, or the like.

The broadcast scanning system 160 can be configured to access other datastreams that accompany the broadcast stream 121 and/or are differentfrom the broadcast stream 121 in order to analyze the broadcast stream121. For example, the broadcast scanning system 160 can be configured toscan a subcarrier data stream that accompanies the broadcast stream 121to obtain information about the broadcast stream 121. The subcarrierdata stream can comprise data segments that can be as small as a singlebit or as large as multiple files, the segments of which taken together,make up the data stream. The broadcast scanning system 160 may furtherscan other media streams that accompany the broadcast stream 121 (forexample, RBDS, RDS, DRM, DARC, DAB, DMB, D-VBH, IBOC, combinations ofthe same, or the like.). The broadcast scanning system 160 may also scanthe same media content that is being broadcasted from differentbroadcast sources, such as the transmission module 220 and/or thealternate transmission module 230 illustrated in FIG. 2. For example,some FM broadcast stations, using their website, broadcast their mediacontent over the airwaves and over the internet. The broadcast scanningsystem 160 can be configured to capture both the broadcast stream fromthe airwaves and the internet, together or separately.

Additionally, the broadcast scanning system can be configured to accessthe accompanying and/or other broadcast streams transmitted by thebroadcast source. The ability to scan accompanying and/or otherbroadcast streams allows the broadcast scanning system 160 to captureadditional identifying information about the broadcast stream 121 thatmight not be available by analyzing the broadcast stream 121 alone. Forexample, some FM broadcast stations, using their website, not onlybroadcast their media content over the airwaves and the internet butalso broadcast and display the artist and title of the media contentbeing broadcasted. The broadcast scanning system 160 can be configuredto capture not only the media content from the airwaves and/or internetbroadcast streams but also the artist, title, album, date, ad,advertiser, graphics, lyrics, concert and/or event information, time,call letters, duration and/or other relevant data from the station'swebsite.

The broadcast scanning system 160, as illustrated in FIG. 2, can accessthe alternate broadcast stream 131 transmitted by the alternatebroadcast source 130. The broadcast scanning system 160 can use thealternate broadcast stream 131 that is associated with the broadcaststream 121 to obtain even more information about the broadcast stream121. For example, the broadcast scanning system 160 may capture datathat is associated with the broadcast stream 121 but that does notaccompany the broadcast stream 121. The ability to access alternatesources of broadcast enables the broadcast scanning system 160 to obtainadditional information as to what is contained in the broadcast stream121. In one example, the broadcast scanning module scans a transcript ofa show transmitted by the alternate broadcast source 130 using thealternate broadcast stream 131 to further associate the transcript withthe original programming transmitted using the broadcast stream 121. Inone embodiment, the alternate broadcast source 130 transmits thealternate broadcast stream 131 to the scanning system using theinternet.

Referring back to FIG. 1, the broadcast scanning system 160 can furtheraccess sources and/or destinations of broadcast streams to obtain moreinformation about broadcast streams. In one embodiment, the broadcastscanning system 160 is accessing the broadcast source 120 of thebroadcast stream 121 to obtain information about the broadcast stream121. The broadcast scanning system 160 can also be configured to accessthe destination of the broadcast stream 121 to obtain information aboutthe broadcast stream 121. The broadcast scanning system 160 can extractinformation about the media content transmitted in the broadcast stream121 by analyzing the broadcast stream 121, the data streams thataccompany the broadcast stream 121, the alternate broadcast streams 131,the subcarrier data streams associated with the broadcast stream 121,the source of the broadcast stream 121, and/or the destination of thebroadcast stream 121.

In one embodiment, broadcast source 120 utilizes a plurality ofcommunication means within network 180 to communicate with broadcastreceiving device 140. In one embodiment, broadcast source 120 utilizesone communication means within network 180 to communicate data withbroadcast receiving device 140 and a different communication meanswithin network 180 to communicate media with broadcast receiving device140. In one embodiment, broadcast source 120 utilizes the samecommunication means within network 180 to communicate data and/or mediawith broadcast receiving device 140. In one embodiment, broadcast source120 and alternate broadcast source 130 utilize the same communicationmeans in network 180 to communicate with broadcast receiving device 140.In one embodiment, broadcast source 120 and alternate broadcast source130 utilize different communication means in network 180 to communicatewith broadcast receiving device 140. In one embodiment, thecommunication means in network 180 between broadcast source 120broadcast scanning system 160 is the same as the communication means innetwork 180 between alternate broadcast source 130 and broadcastscanning system 160. In one embodiment, the communication means innetwork 180 between broadcast source 120 broadcast scanning system 160is different from the communication means in network 180 betweenalternate broadcast source 130 and broadcast scanning system 160. In oneembodiment, the broadcast scanning system determines which of aplurality of broadcast sources 120 will be received based on informationfrom broadcast receiving device 140.

FIG. 3 illustrates the broadcast system 300 with a detailed view of oneembodiment of the broadcast scanning system 160. In the illustratedembodiment, the broadcast scanning system 160 comprises a streamanalysis module 320, a stream scanner module 310, device monitoringmodule 330, and a media storage database 340.

Referring to FIG. 3, the stream scanner module 310 obtains the broadcaststream 121 transmitted by the broadcast source 120 via 161. One ofordinary skill in the art will recognize that the stream scanner module310 can obtain any broadcast stream transmitted over various broadcastmediums comprising, for example, AM, FM, IBOC, internet, satellite,Digital Radio Mondiale, WiFi, Analog Television, Digital Television,wireless, peer to peer, cable, combinations of the same, or the like.The stream scanner module 310 can also capture individual broadcaststreams such as the selection of songs, ads and/or audio from a musicplayer and/or a selection of movies and/or video content from a digitalvideo player. In one embodiment, the stream scanner module 310 can scana podcast from a media device.

FIG. 3 further illustrates the stream analysis module 320, which isconfigured to analyze the broadcast stream 121 obtained by the scannermodule through the network 180. In one embodiment, the stream analysismodule 320 identifies each specific instance of media content and/ordata stream transmitted using broadcast stream 121. The stream analysismodule 320 can be configured to identify media content in the broadcaststream 121 even in instances where the identification information is notobtained from the source of transmission such as broadcast source 120.In one example, the stream analysis module 320 analyzes the broadcaststream 121 using information it receives from the alternate broadcastsource 130 via the alternate broadcast stream 131. In another example,the stream analysis module 320 can identify media content transmitted inthe broadcast stream 121 by conducting wave form analysis to identifythe media stream. In one embodiment, as will be discussed further below,the stream analysis module 320 may obtain identifying information fromthe media storage database 340. In another embodiment, the streamanalysis module 320 can obtain identifying information from a thirdparty to identify the media content transmitted in the broadcast stream121.

The stream analysis module 320 in FIG. 3 can identify media contenttransmitted in the broadcast stream 121 in many other ways. Humans canmonitor the broadcast stream 121, making notations on media content asthey are broadcasted in a broadcast stream. Alternately, the streamanalysis module 320 can accomplish the same task without constant humanintervention. In one embodiment, the stream analysis module 320 usesidentifying information that is transmitted by the broadcast source 120and/or is transmitted along broadcast stream 121 to analyze thebroadcast stream 121. The stream analysis module 320, for example, candecode a subcarrier signal that is generated by the digital data encodermodule 210 and/or integrated with the broadcast stream 121 to furtheranalyze the broadcast stream 121. In one embodiment, media programmingsuch as a song transmitted as part of the broadcast stream 121 from anFM analog or digital radio can contain data in an associatedRDS/RBDS/Program Associated Data (PAD) data stream that identifies thesong title, artist, album, language, other information related to thesong, and/or relevant information necessary to identify an advertisementand/or the associated advertiser. Identifying methodologies cancomprise: textual string acquisition from broadcast stream 121 withnormalization of acquired text, acquisition of content identifiers viabroadcast stream 121 from third party sources matched to a local contentdatabase, broadcaster media event identifiers contextually unique totheir universe of operation, content identifiers, direct acquisitionfrom broadcast source 120 and/or acquisition from broadcast source 120from web properties, third party sources, schedules of broadcast stream121, combinations of the same, or the like. After the broadcast stream121 is captured by the broadcast scanner module, the stream analysismodule 320 can retrieve data from the data stream, analyze the data inthe data stream, and/or identify the associated broadcast stream.

In FIG. 3, the stream analysis module 320 can further analyze thebroadcast stream for a digital fingerprint, and/or compare the digitalfingerprint of the scanned media content and/or broadcast stream withthe digital fingerprints already stored in the media storage database340. If the fingerprint for the media content and/or the broadcaststream match information that is stored in media storage database 340,then the stream analysis module can assign the broadcast stream and/ormedia segment a unique event identifier, and/or store the unique eventidentifier with the matching information in the media storage database340. In some embodiments, the broadcast scanning system 160 is alsoconfigured to send to broadcast receiving devices 140 the unique eventidentifier that corresponds and/or that is associated with the broadcaststream that is being received by the broadcast receiving devices 140.

For example, if the stream analysis module 320 in FIG. 3 identifies thesong being broadcasted in the broadcast stream 121, then the streamanalysis module 320 assigns a unique event identifier to each specificbroadcast stream and/or media segment, and/or stores the unique eventidentifier as well as the artist/advertiser and/or title of thesong/advertisement, the time, date, channel, content identifier, ISCICode and/or station and/or other relevant data that the media wasbroadcasted. The broadcast scanning system 160 is then configured tobroadcast the unique event identifier to the broadcast receiving devices140 that are receiving the specific broadcast stream and/or mediasegment that corresponds to the unique event identifier. In oneembodiment, the broadcast scanning system 160 can then provide broadcastreceiving devices 140 access to the information that is stored in mediastorage database 340 through use of the unique event identifier. Inanother embodiment, the broadcast scanning system 160 can then providebroadcast receiving devices 140 access to the information that is storedin media storage database 340

With reference to FIG. 3, the stream analysis module 320 not onlyidentifies songs but also identifies other media content comprisingwithout limitation television programs, movies, advertisements,promotions, news, sporting events, weather, stock information,combinations of the same, or the like. In the event that the scannedbroadcast stream 121 and/or 131 contains more information than thedatabase already contains, the media storage database 340 can be updatedwith the relevant new information (for example, song title, artist,album, ad, advertiser, availability, language, cultural affinity,political affinity, background information, special offers, where to getmore information, combinations of the same, or the like.).

In FIG. 3, the broadcast scanning system 160 comprises the media storagedatabase 340, which can be configured to store the results from theanalysis performed by the stream analysis module 320. In one embodiment,the media storage database 340 indexes scanned broadcast streams with aunique event identifier and/or database pointer. The media storagedatabase 340 can further store additional information that provides moredetailed information about broadcast stream 121, and such informationcomprises without limitation; stream type, signal strength, broadcastclarity, time and/or date of each broadcast stream transmission, errorsin the broadcast stream 121, frequency and/or channel identification,signal anomalies and/or signal fingerprints that are distinctlycharacteristic of a particular broadcast source 120, stationidentification, combinations of the same, or the like. In oneembodiment, the media storage database 340 stores waveforms associatedwith the audio of the broadcast stream 121 such as a song,advertisement, radio and/or television program, and/or an introductionto media content along with relevant information associated with eachmedia segment. In other embodiments, the stored information may bespecific to a program and/or product/service but not to each instance ofthat program. In another embodiment, the media storage database 340stores textual information gained from scanning the broadcast stream 121and/or its associated data stream such as RBDS, RDS, Internet Protocol,General Packet Radio Service (GPRS), High-Speed Downlink Packet Access(HSDPA), IBOC data, combinations of the same, or the like. Eachbroadcast event such as a song and/or advertisement receives theassignment of a unique event identifier specific to the instance ofbroadcast of that media event and/or segment.

In embodiments of the invention, the media storage database 340 of FIG.3 is accessible by broadcast receiving system 140. For example, if auser is listening to media content on a broadcast receiving system 140,and/or the user desires to obtain more information about the mediacontent and/or engage in a purchase transaction, the user in someembodiments clicks a button on the broadcast receiving system 140. Thebroadcast receiving system 140 sends the unique event identifier that isassociated with the media content to the broadcast scanning system 160.The broadcast scanning system 160 performs a database lookup and/orsearch of the unique event identifier in the media storage database 340to obtain information related to the media content.

In one embodiment, the broadcast receiving device 140 is configured toallow users to conduct searches of the media storage database 340 usingimperfect human recollection. For example, if a user recalls a portionof a station name, an artist name, a program title, an estimatedbroadcast time of media stream, combinations of the same, or the like,then the user may use the broadcast receiving device 140 to perform adatabase search of the media storage database 340 by sending to thebroadcast scanning system 160 a query and/or search request thatcomprises the partially recalled information about a broadcast stream.The broadcast scanning system 160 is then configured to perform adatabase search of the media storage database 340 based on the partiallyrecalled information.

Additionally, if users of broadcast receiving systems 140 know theparticular media content they desire to access, for example, aparticular advertisement, then users may send a request to the broadcastscanning system 160. The broadcast scanning system 160 is thenconfigured to perform a database search of the media storage database340 based on the media content name provided. In some embodiments, thebroadcast scanning system 160 is configured to return to the broadcastreceiving device every instance (for example, time, date, source oftransmission, and/or geographic location) of a specific media contentand/or the surrounding context (for example, media content that occurredbefore, during or after the targeted media content on the same or othermonitored media streams) to users of the broadcast receiving devices140. In one embodiment, the broadcast scanning system 160 is configuredto provide and/or generate a report for third party entities, whereinthe report summarizes the requests submitted by users of the broadcastreceiving devices 140. Such reports are useful to third parties, such asadvertisers, record companies, broadcasters, analytical companies,combinations of the same, or the like to determine user interest inbroadcast media content, time of day impact, gender impact, age impact,race impact, political, cultural, ethnicity impact, combinations of thesame, or the like. Additional methods and systems of how the data miningand reporting system operates is disclosed in detail in U.S. patentapplication Ser. No. 10/806,084, filed Mar. 22, 2004, titled “BROADCASTRESPOND METHOD AND SYSTEM,” which is incorporated by reference in itsentirety. Additional methods and system of how users of the broadcastreceiving devices 140 respond to broadcasts are disclosed in detail inU.S. Pat. No. 6,957,041, which issued on Oct. 18, 2005, which isincorporated by reference in its entirety.

As illustrated in FIG. 3, the broadcast scanning system 160 comprisesthe device monitoring module 330, which communicates with broadcastreceiving devices 140. The device monitoring module 330 for exampleobtains user device status from broadcast receiving devices 140 (forexample, whether the device is on or off, whether a station change hasoccurred, what is the media content currently being played, whether aradio or a media player is on, user responses, combinations of the same,or the like.). The device monitoring module 330 can also track the typesof broadcast streams that are being received by the broadcast receivingdevices 140. In one embodiment, the stream scanner module 310 scans thebroadcast stream 121, the stream analysis module 320 analyzes the mediacontent of the broadcast stream 121, and/or assigns and/or stores aunique event identifier or other identifier, such as a broadcaster mediaevent identifier, associated with the broadcast stream 121 for thatbroadcast event and/or media segment. If the device monitoring module330 detects that the broadcast receiving device 140 is receiving thebroadcast stream 121, then the device monitoring module 330 sends and/ortransmits the unique event identifier to broadcast receiving device 140.

In FIG. 3, the device monitoring module 330 of the broadcast scanningsystem 160 can obtain, in addition to generating status reports, othertypes of information from the broadcast receiving devices 140. Forexample, the device monitoring module 330 can receive information when auser of a broadcast receiving device 140 submits a vote about a mediacontent event transmitted in broadcast stream 121. In one embodiment,the device monitoring module 330 receives data and/or information frombroadcast receiving system 140 about purchases, votes, expressions ofinterest and/or other actions made by users on the broadcast receivingdevices 140. The methods and systems of how users of the broadcastreceiving devices 140 interactively respond to broadcasts are disclosedin detail in U.S. patent application Ser. No. 10/806,084, filed Mar. 22,2004, titled “BROADCAST RESPOND METHOD AND SYSTEM,” which isincorporated by reference in its entirety. Additional methods and systemof how users of the broadcast receiving devices 140 respond tobroadcasts are disclosed in detail in U.S. Pat. No. 6,957,041, whichissued on Oct. 18, 2005.

The device monitoring module 330 of FIG. 3 can obtain additionalinformation from the broadcast receiving devices 140, such as whetherusers of the broadcast receiving devices 140 forwarded the mediaprogramming and/or information about the media programming received inthe broadcast stream 121 to a third party, whether users marked themedia content for further review, voted, bought ringtones, CD's digitalmusic, videos, wallpapers, responded to an ad and/or television program,combinations of the same, or the like. The device monitoring system isconfigured to capture additional status information such as demographicinformation associated with users of the broadcast receiving devices140; information associated with broadcast receiving devices 140 (forexample, product or device registration, location of the broadcastreceiving devices 140); quality of the media received in the broadcaststream 121; language of the broadcast stream 121, other activities thatusers of the broadcast receiving device 140 are conducting; time stampsrelated to reception of the broadcast stream 121; time stamps of userresponses to media programming received using each broadcast stream;interactions with other devices; type and/or number of broadcast streamsaccessed by the broadcast receiving devices 140; combinations of thesame, or the like.

The device monitoring module 330 of FIG. 3, in addition to obtaininginformation from broadcast receiving devices 140, transmits informationto the broadcast receiving devices 140. For example, the devicemonitoring module 330 broadcasts a unique data stream using scanningbroadcast stream 161 to broadcast receiving devices 140 thatsimultaneously receive the broadcast stream 121 from the broadcastsource 120. In some embodiments, the unique data stream comprises aunique event identifier associated or assigned to the broadcast stream121.

The device monitoring module 330 can be configured to store in the mediastorage database 340 any device communication 141 information that thedevice monitoring module 330 receives from the broadcast receivingdevices 140. Therefore, the media storage database 340 can storebroadcast receiving device user statistics and/or response data alongwith the media content that device monitoring module 330 receives frombroadcast receiving devices 140 and/or the various data sources 120.

In one embodiment, the media storage database 340 is proprietary. Insome embodiments, the media storage database 340 is managed by a thirdparty. In one embodiment, the media storage database 340 contains bothproprietary and third party elements. In certain embodiments, the mediastorage database 340 is accessed through the internet. In oneembodiment, there is a plurality of broadcast scanning systems 160. Insome embodiments, the number of broadcast scanning systems 160 is thesame as the number of broadcast sources 120. In one embodiment, thenumber of broadcast scanning systems 160 is fewer than the number ofbroadcast sources 120. In certain embodiments, the broadcast scanningsystem 160 receives both the broadcast source 120 and the alternatebroadcast source 130 associated with broadcast source 120. In oneembodiment, one broadcast scanning system 160 receives a media streamfrom the broadcast source 120 and a different broadcast scanning system160 receives the alternate broadcast source 130 associated withbroadcast source 120. In some embodiments, a broadcast scanning system160 communicates with other broadcast scanning systems 160. In oneembodiment, each broadcast scanning system 160 operates independentlyfrom other broadcast scanning systems 160. In certain embodiments, thenumber of broadcast scanning systems 160 is the same as the number ofbroadcast receiving devices 140. In some embodiments, the number ofbroadcast scanning systems 160 is less than the number of broadcastreceiving devices 140. In one embodiment, code resident in the broadcastreceiving device 140 determines which broadcast scanning system 160 thebroadcast receiving device 140 will communicate with. In certainembodiments, the determination of which broadcast scanning system 160the broadcast receiver device 140 will communicate with is contained ina database of broadcast scanning systems 160 resident in broadcastreceiving device 140. In one embodiment, the determination of whichbroadcast scanning system 160 the broadcast receiver device 140 willcommunicate with is made by polling multiple broadcast scanning systems160. In some embodiments, the broadcast receiving device 140communicates with a server system to determine which broadcast scanningsystem 160 is the best source for obtaining data. In one embodiment, aserver system determines which broadcast source 120 a broadcast scanningsystem 160 will receive based on communication with broadcast receivingdevices 140. In certain embodiments, the server system uses a databaseof broadcast scanning systems 160 to determine which broadcast scanningsystem 160 a particular broadcast receiving device 140 shouldcommunicate with. In one embodiment, the broadcast receiving device 140communicates changes in broadcast receiver device status to thebroadcast scanning system 160 such as turning on, turning off, and/orchanging reception from one broadcast source 120 to another broadcastsource 120. In some embodiments, all broadcast receiving devices 140receiving the same broadcast source 120 communicate with a singlebroadcast scanning system 160. In one embodiment, broadcast receivingdevices 140 receiving the same broadcast source 120 communicate withdifferent broadcast scanning systems 160. In certain embodiments, somebroadcast receiving devices 140 receiving the same broadcast source 120communicate with one broadcast scanning system 160 while other broadcastreceiving devices 140 communicate with a different broadcast scanningsystem 160. In one embodiment, broadcast scanning system 160 prepares alist of broadcast sources 120 available to broadcast receiving devices140. The list of available broadcast sources 120 can be filtered basedon criteria pertinent to the broadcast receiving device 140. Thefiltering can be made based on a selection by the user of broadcastreceiving device 140, based on pre-selected criteria and/or based on thebroadcast scanning system 160 obtaining the status of the broadcastreceiving device 140. In another embodiment, the broadcast receivingdevice 140 reports its geographic location to the broadcast scanningsystem 160 and/or the broadcast scanning system 160 filters the listbased on availability of reception of broadcast sources 120 by thespecific broadcast receiving device 140 requesting the list. In certainembodiments, the list is filtered by preferred media format. In oneembodiment, the broadcast receiving device 140 presents a list ofbroadcast sources 120 available to the broadcast receiving device 140.The presentation of the list can be on demand by the user, when thebroadcast receiving device 140 is activated, upon a status change ofavailable broadcast sources 120, upon a status change on the part of thebroadcast receiving device 140, periodically and/or based on othercriteria. The status change can comprise geographic movement, time ofday, changes in communication availability, loss of service, restorationof service, changes in filter criteria and/or other status alterations.The last broadcast source 120 accessed can be selected as the defaultsource. Preferential positioning within the list of available broadcastsources 120 can be made. A formula can be used to predict what broadcastsources 120 would be preferred by the broadcast receiving device 140user with the formula determining at least part of the list filteringand/or the list presentation manner including as displayed to the user.In another embodiment, usage patterns could determine the presentationlist of available broadcast sources 120 using criteria such as: time ofday receiving device 140 is powered up, and/or time of day a mediasegment is received by broadcast receiving device 140 where presenting alist of available broadcast sources 120 is based on previous usagepatterns established by the user of broadcast receiving device 140.

FIG. 3A illustrates a block diagram depicting one embodiment of acomputer system configured to run software for implementing one or moreembodiments of the broadcast scanning system described herein.

Computing System

FIG. 3A is a block diagram of one embodiment of a computing system 360that is in communication with one or more broadcast sources 380, one ormore receiving devices 378, one or more other databases and/or datasources 382, and/or one or more other computing devices 384 via one ormore networks 376. The computing system 360 may be used to implement oneor more of the systems and methods described herein. In addition, in oneembodiment, the computing system 360 may be configured to create and/orapply scanner modules 366 that generate and/or manage a repository ofbroadcast scanning data, comprising, for example, identifying broadcastcontent, obtaining information associated with the broadcast content,assigning unique event identifiers to a specific broadcast of abroadcast stream and/or media segment, and/or maintaining a database ofunique event identifiers. In other embodiments, the computing system 360is configured to execute searching and/or matching algorithms foridentifying broadcast content and/or information used to provide aprecise response to user inquiries and/or requests wherein a uniqueevent identifier is returned with the inquiry and/or request. Thereturned unique event identifier can then be correlated with at leastone stored entry in computing system 360. While FIG. 3A illustrates oneembodiment of a computing system 360, it is recognized that thefunctionality provided for in the components and/or modules of computingsystem 360 may be combined into fewer components and/or modules and/orfurther separated into additional components and/or modules.

Scanner Module

With reference to FIG. 3A, in one embodiment, the system 360 comprises ascanner module 366 that carries out the functions described herein withreference to the broadcasting scanning system 160. The scanner module366 may be executed on the computing system 360 by a central processingunit 362 discussed further below.

Computing System Components

Regarding FIG. 3A, the computing system 360 can also comprise a personalcomputer, workstation, server, and/or mainframe computer suitable forcontrolling and/or communicating with large databases, performing highvolume transaction processing, and/or generating reports from largedatabases. The computing system 360 also comprises a central processingunit (CPU) 362, which may comprise a conventional microprocessor and/orbaseband chip. The computing system 360 further comprises a memory 364,such as random access memory (RAM) for temporary storage of informationand/or a read only memory (ROM) for permanent storage of information,and/or a mass storage device 368, such as a hard drive, diskette, flashmemory and/or optical media storage device. Typically, the modules ofthe computing system 360 are connected to the computer using a standardsbased bus system. In different embodiments, the standards based bussystem could be Peripheral Component Interconnect (PCI), Microchannel,Small Computer System Interface (SCSI), Industrial Standard Architecture(ISA), Baseband Bus and Extended ISA (EISA) architectures, combinationsof the same, or the like.

As illustrated in FIG. 3A, an embodiment of a computing system 360configured to run software for implementing one or more embodiments ofthe broadcast scanning system comprises one or more commonly availableinput/output (I/O) devices and/or interfaces 372, such as a keyboard,mouse, touchpad, four-way navigation system, other sensors, wirelesstechnologies such as Bluetooth, WiFi, Infrared and/or printer. In oneembodiment, the I/O devices and/or interfaces 372 comprise one or moredisplay devices, such as a monitor, that allows the visual presentationof data to a user. More particularly, a display device provides for thepresentation of GUIs, application software data, list of scanned mediastreams and/or their source, multimedia presentations, transmitted orreceived media, for example. In the embodiment of FIG. 2, the I/Odevices and/or interfaces 372 also provide a communications interface tovarious external devices. The computing system 360 may also comprise oneor more multimedia devices 370, such as speakers, video cards, graphicsaccelerators, vibrators, and/or microphones, for example.

Computing System Device/Operating System

The computing system 360 may run on a variety of computing devices, suchas, for example, a server, a Windows server, an Apple Computer server, aStructure Query Language server, a Unix server, a personal computer, amainframe computer, a laptop computer, a cell phone, a personal digitalassistant, a kiosk, an audio player, combinations of the same, or thelike. The computing system 360 is generally controlled and/orcoordinated by operating system software, such as z/OS, Windows 95,Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vista, Linux,SunOS, Solaris, Palm, Windows Mobile, Symbian, Blackberry, and/or othercompatible operating systems. In Macintosh systems, the operating systemmay be any available operating system, such as MAC OS X. In otherembodiments, the computing system 360 may be controlled by a proprietaryoperating system. Conventional operating systems control and/or schedulecomputer processes for execution, perform memory management, providefile system, networking, and/or I/O services, and/or provide a userinterface, such as a graphical user interface (GUI), among other things.

Network

In the embodiment of FIG. 3A, the computing system 360 communicates witha network 376, such as one or more of a LAN, WAN, cellular network,public switched telephone network and/or the internet, for example, viaa wired, wireless, or combination of wired and wireless, communicationlink 374. The network 376 communicates with various computing devicesand/or other electronic devices via wired and/or wireless communicationlinks. In the embodiment of FIG. 3A, the network 376 is communicatingwith one or more broadcast sources 380 and/or one or more receivingdevices 378.

Access to the scanner module 366 of the computer system 360 by broadcastsources 380 and/or by receiving devices 378 may be through a web-enableduser access point such as the broadcast sources 380 and/or receivingdevices 378 personal computer, cellular phone, digital media player,laptop, and/or other device capable of connecting to the internet 376.Such a device may have a browser module implemented as a module thatuses text, graphics, audio, video, and/or other media to present dataand/or to allow interaction with data via the network 376. The browsermodule may be implemented as a combination of an all points addressabledisplay such as a cathode-ray tube (CRT), a liquid crystal display(LCD), a plasma display, and/or other types and/or combinations ofdisplays. In addition, the browser module may be implemented tocommunicate with input devices 372 and/or may also comprise softwarewith the appropriate interfaces which allow a user to access datathrough the use of stylized screen elements such as, for example, menus,windows, dialog boxes, bar coding, selectable lists, toolbars, and/orcontrols (for example, radio buttons, check boxes, sliding scales,combinations of the same, or the like). Furthermore, the browser modulemay communicate with a set of input and/or output devices to receivesignals from the user. The input device(s) may comprise a keyboard,roller ball, four way navigation system, pen and/or stylus, mouse,trackball, voice recognition system, and/or pre-designated switchesand/or buttons. The output device(s) may comprise a speaker, a displayscreen, a printer, and/or a voice synthesizer. In addition a touchscreen may act as a hybrid input/output device. In another embodiment, auser may interact with the system more directly such as through a systemterminal connected to the score generator without communications overthe internet, a WAN, LAN, and/or similar network.

In some embodiments, the system 360 may comprise a physical and/orlogical connection established between a remote microprocessor and ahost computer for the express purpose of uploading, downloading, and/orviewing interactive data and/or databases on-line in real time. In someembodiments, broadcast sources 380 are internal to a device, and/or thecomputer system 360 may internally access the broadcast source 380 withthe scanner 366 as an application and/or process run by the CPU 362.

Other Systems

In addition to the systems that are illustrated in FIG. 3A, the network376 may communicate with other broadcast sources 380, other receivingdevices 378, other data sources 382 and/or other computing devices 384.The computing system 360 may also comprise one or more internal and/orexternal data sources. For example any of the repository of mediacontent identification data, unique event identification data, and/orother components of the broadcast scanning system 160 described hereinmay be stored in whole or in part in the computing system 360 and/or maybe stored in whole or in part on another system. In some embodiments,one or more of the data repositories and/or the data sources may beimplemented using a relational database, such as DB2, Sybase, Oracle,CodeBase and/or Microsoft® SQL Server, mySQL, PHP as well as other typesof databases such as, for example, a flat file database, anentity-relationship database, an object-oriented database, and/or arecord-based database.

FIG. 4 illustrates a flow diagram of one embodiment of a method forcapturing broadcast streams 121, analyzing the broadcast streams 121 toobtain information about the media content transmitted in the broadcaststream 121, obtaining more information about the media content ifavailable, storing in the database the information related to the mediacontent and/or media segment. In some embodiments, the method furthercomprises providing access to the stored information to broadcastreceiving devices 140 and/or other third party entities.

As illustrated in FIG. 4, the scanning process 400 begins with block 410whereby a broadcast stream 121 is received by broadcast scanning system160, for example, from the broadcast source 120. The broadcast source120 can be a television and/or radio station, an internet server and/orcomputer, peer-to-peer device, a media player, any other system and/ordevice that is capable of transmitting a data and/or media signal,combinations of the same, or the like.

Referring to block 420 in FIG. 4, the broadcast scanning system 160scans a broadcast stream 121 broadcasted by, for example, the broadcastsource 120 and/or the alternate broadcast source 130. As previouslydiscussed, the broadcast scanning system 160 can be configured to scanseveral types of broadcast streams 121 comprising, but not limited to,radio, television, internet, Wi-Fi, peer-to-peer signals, combinationsof the same, or the like. In one embodiment, the broadcast scanningsystem 160 uses the stream scanner module 310 of FIG. 3 to scanbroadcast streams.

In block 440 of FIG. 4, the broadcast signal that is received by thebroadcast source 120 in block 410 and scanned by the broadcast scanningsystem 160 in block 420 is analyzed. In one embodiment, the broadcaststream 121 is analyzed by the stream analysis module 320 of thebroadcast scanning system 160 as illustrated in FIG. 3. Analyzingbroadcast streams can comprise identifying media content and/or mediaprogramming segments transmitted in the broadcast stream 121 of FIG. 1.The broadcast scanning system 160 can identify media content transmittedin the broadcast stream 121 using various methods: obtaining a digitalfingerprint of the broadcast stream 121, conducting a matching analysisof the digital fingerprint of the broadcast stream 121 with digitalfingerprints stored in the media storage database 340; usingnon-automated mechanisms such as manual identification of programmingevents; obtaining identifying information from different sources thanthe original broadcast stream such as the internet and/or alternatebroadcast source 121; decoding subcarrier data such as textuallyidentifying information that is encoded and/or transmitted by thebroadcast source 120 along the original broadcast stream 121;combinations of the same, or the like.

In block 460 of FIG. 4, the broadcast scanning system 160 is configuredto store in the media storage database 340 the results of the scanninganalysis of block 330. The broadcast scanning system 160 stores theresults of the analysis for various reasons. In one embodiment, thebroadcast scanning system 160 retrieves the digital fingerprint of thebroadcast stream 121 from the database for identification purposes. Thestream analysis module 320 may retrieve the stored data from the mediastorage database 340 to compare the stored digital fingerprint with thedigital fingerprint of broadcasts received in the future to determinewhether the stored data and/or media is identical to, similar to, and/orassociated with the broadcast stream that being broadcasted. In otherembodiments, the stored information is retrieved by the users of thebroadcast receiving devices 140 through a database search, as will befurther discussed. The broadcast scanning system 160 can also beconfigured to combine the broadcast stream 121 with information that isretrieved from the media storage database 340, and/or transmit thecombined data to the broadcast receiving systems 140, thereby providingmore pertinent information about the original broadcast stream to usersof the broadcast receiving systems 140.

In block 480 of FIG. 4, the broadcast scanning system 160 providesaccess to information related to the broadcast stream 121. In oneembodiment, the broadcast scanning system 160 transmits the scannedand/or analyzed information to the broadcast receiving devices 140 inaccordance with preferences set by the users of the broadcast receivingdevices 140. If users of the broadcast receiving devices 140 receivemedia content and/or media programming in the broadcast stream 121, butnot any associated data stream that may contain information that isrelevant to the broadcast stream 121, then the broadcast scanning system160 can transmit to the broadcast receiving device 140 all or a portionof the data stored in the media storage database during block 460. Forexample, if the broadcast receiving device 140 users receive the FMsignal without a RDS/RBDS data stream, and/or the RDS/RBDS data streamis too weak to process, then the device monitoring module 330 willdetect the absence of an RDS/RBDS data stream. The device monitoringmodule 330 is then configured to signal the broadcast scanning system160 to retrieve from the media storage database 340 all or a portion ofthe data related to the media content that is being broadcasted in thebroadcast stream 121, and/or transmit that data to the broadcastreceiving device 140.

With reference to FIG. 4, in one embodiment, the broadcast scanningsystem 160 provides access to the broadcast receiving device 140 using awireless IP connection, such as GPRS and/or 3G. The broadcast scanningsystem 160 can also transmit supplemental, complimentary, and/orconfirming data to the broadcast receiving devices 140 before, duringand/or after the broadcast receiving devices 140 receive the originalbroadcast stream. For example, the broadcast scanning system 160 inblock 480 transmits the information to the broadcast receiving devices140 through a data stream while the broadcast receiving devices 140receive a broadcast stream 121 from a discrete source. In otherexamples, users of the broadcast receiving devices 140 receive an RDSsub-carrier that is well suited for receiving textual information but isnot well suited for sending graphical data and/or information. If thebroadcast receiving devices 140 are capable of receiving both RDS, 3Gand/or similar data streams, the broadcast scanning system 160 cantransmit complimentary RDS and/or 3G data streams concurrently to thebroadcast receiving devices 140 to be associated with the broadcaststream 121. If the broadcast receiving devices 140 are capable ofreceiving both RDS, 3G and/or similar data streams, the broadcastscanning system 160 can transmit complimentary RDS to the broadcastreceiving devices 140 while 3G data streams could be receivedconcurrently from broadcast source 120 to be associated with thebroadcast stream 121 received by broadcast receiving devices 140. Thebroadcast scanning system 160 can transmit other data and/or informationstreams related to the broadcast stream 121.

With reference to FIGS. 5, 6, and 7, the broadcast scanning system 160as discussed herein can be configured in different forms. In someembodiments, the broadcast scanning system 160 can comprise dedicatedscanning systems at fixed locations as illustrated in FIG. 5. In otherembodiments, the broadcast scanning system can comprise a plurality ofscanning systems, wherein the scanning systems are incorporated into aplurality of broadcast receiving devices 640 as illustrated in FIG. 6.In this embodiment, the scanning systems are said to be distributedbecause the broadcast receiving devices are distributed across aparticular geographic area. In other embodiments, the broadcast scanningsystem can comprise both dedicated scanning systems and distributedscanning systems as illustrated in FIG. 7. Each of the foregoingembodiments is discussed below.

In one embodiment, as illustrated in FIG. 5, the broadcast system 500comprises the broadcast source 120, the broadcast receiving devices 140,and the centralized scanning system 560. The centralized scanning system560 further comprises the one or more dedicated scanning systems 565,and the central management module 555. In some embodiments, there is adedicated scanning system 565 for each broadcast stream 121. In certainembodiments, there are fewer scanning systems 565 than broadcast streams121 and dedicated scanning systems 565 scan more than one broadcaststream 121. In some embodiments, there are extra dedicated scanningsystems 565 that can serve as backups. FIG. 5 depicts the centralizedscanning system 560 wherein the dedicated scanning systems 565 scan thebroadcast streams 121 from the broadcast sources 120 (for example, aradio station) and/or the broadcast receiving systems 140 (for example,a media player device). Each of the dedicated scanning systems 565 canbe configured to perform the scanning analysis to identify the mediacontent in the broadcast stream 121 transmitted from a specificbroadcast source 120. In other embodiments, the dedicated scanningsystems 565 can be configured to multiplex thereby allowing eachdedicated scanning system 565 to perform the scanning analysis on aplurality of broadcast streams 121 from a plurality of broadcast sources120. The communication means 180, and broadcast receiver link 141 couldbe the same or similar in function as illustrated in FIG. 1.

Referring to FIG. 5, the dedicated scanning systems 565 are thenconfigured to send analysis reports about the scanned broadcast stream121 to the central management module 555. The dedicated scanning systems565 can be configured to send status reports on a real-time, constant,batch, periodic, delayed, and/or scheduled basis. In other embodiments,the dedicated scanning systems 565 can send reports on a dynamic basis,for example, when a change of status occurs.

The central management module 555 can aggregate results of the scanninganalysis conducted by the dedicated scanning modules for furtherprocessing and analysis. In one embodiment, the central managementmodule 555 stores the aggregated data in the media storage database 340of FIG. 3. The central scanning system 160 can transmit the results ofthe scanning analysis to the broadcast receiving devices 140, forexample, using the device monitoring module 330 of FIG. 3. In oneembodiment, the centralized scanning system 560 and the broadcastreceiving devices 140 are both accessing the same broadcast stream 121from the broadcast sources 120, with the centralized scanning system 560performing scanning analysis of the broadcast stream 121 and/or scanninganalysis of an associated data stream and/or then transmitting asupplemental media stream and/or a supplemental data stream to thebroadcast receiving devices 140 using scanning broadcast stream 161. Inanother embodiment, the central management module 555 can associate aplurality of broadcasting receiving devices 140 to be managed by theappropriate dedicated scanning systems 565 wherein the results of thededicated scanning system analysis can be sent first to the broadcastreceiving devices 140.

FIG. 6 illustrates one embodiment of a broadcast system that employs adistributed scanning system 660 to perform the scanning analysis. In thedistributed scanning system 660, each broadcast receiving device 640scans the broadcast stream 121 transmitted by the broadcast sources 120using the internal broadcast scanning system 160 and/or analyzes thebroadcast stream 121 independent of an external broadcast scanningsystem 160. In one embodiment, the broadcast receiving devices 640 scana closed captioning data stream accompanying a television broadcasttransmitted by the broadcast sources 120. The broadcast receivingdevices 640 scan the broadcast stream 121 for key words, and/or obtainadditional images from another broadcast source, for example, theInternet. The broadcast receiving devices 640 then display thetelevision broadcast, as well as any associated images obtained from theinternet to the user, for example, in a picture-in-picture format and/oras discrete images on a display and/or screen. Additionally, thebroadcast receiving devices 640 scan multiple RDS/RBDS data streamsaccompanying various radio broadcasts transmitted by the broadcastsources 120. The broadcast receiving devices 640 scan the broadcaststreams 121 for key words, and/or obtain additional image from anotherbroadcast source, for example, the Internet. The device monitoringmodule 330 of the broadcast scanning system 160 sends the key words aswell as any associated images obtained from the internet to thebroadcast receiving devices 640 tuned to the corollary broadcast stream121 for presentation to the user, for example, in a picture-in-pictureformat and/or as discrete images on a display and/or screen allowing theuser additional information and/or choices relating to broadcast stream121. Broadcast receiving devices 640 may be capable of receiving a firstbroadcast stream 121 and/or any corollary data acquired from the devicemonitoring module 330 while also scanning a discrete second broadcaststream 121 for analysis by 320. The broadcast receiving devices 640 canaccess the broadcast streams 121 in a variety of ways as describedherein. For example, the broadcast scanning system 160 can accessbroadcast stream 121 as described in FIG. 1. In the distributed scanningsystem 660, the broadcast receiving devices 640 may send status reportsto a distributed management module 655 for data mining. The distributedmanagement system 655 may maintain a history of status reports such thatif communication is established with a centralized management module555, the status reports and/or any additional information from thedistributed management system can be transferred to the centralmanagement module 555 for further analysis. The broadcast receivingdevice link 641 can be the same or similar in function to the broadcastreceiver link 141 from FIG. 1, but it can also comprise additionalcommunication capabilities to handle the data inputs and/or outputsassociated with integrating the broadcast scanning system 160 and/or thedistributed management module 655.

In one embodiment, the broadcast receiving devices 640 communicateactions they perform with a server system. In one embodiment, broadcastreceiving device 640 communicates with other broadcast receiving devices640. In another expression of the system, broadcast receiving device 640communicates with other broadcast receiving devices 140. In oneembodiment, each broadcast receiving device 640 operates independently.In one embodiment, broadcast receiving devices 640 utilize internaldatabases as part of their scanning broadcast source 120. In oneembodiment, broadcast receiving devices 640 utilize databases externalto broadcast receiving devices 640 as part of their scanning broadcastsource 120. In one embodiment, broadcast receiving devices 640 utilizeinternal databases and/or databases external to broadcast receivingdevices 640 as part of their scanning broadcast source 120.

FIG. 7 illustrates one embodiment of a broadcast system where acombination of both the centralized scanning system 560 of FIG. 5 andthe distributed scanning system 660 of FIG. 6 are present. In FIG. 7,the broadcast receiving devices 740 may perform a partial scanninganalysis on, for example, an accompanying data stream to the broadcaststream 121, using broadcast scanning system 160 or functional equivalentintegrated into broadcast receiving devices 740 and/or may obtainadditional data from the centralized scanning system 560 if thebroadcast receiving devices 740 cannot successfully and/or completelyperform the analysis of broadcast streams. For example, if the expectedaccompanying data stream is not available, then the broadcast receivingdevice 740 is configured to obtain the data from the centralizedscanning system 560. In another scenario, the broadcast receivingdevices 740 completely perform the scanning analysis, but still send thestatus report to the centralized scanning system 560, which can performadditional scanning analysis not initially conducted by the broadcastreceiving devices 740. The centralized scanning system 560 mayadditionally conduct a confirming scanning analysis in order to monitorthe accuracy of the distributed scanning system 660. The broadcastreceiving device link 741 can be the same or similar to the broadcastreceiver link 141 and/or the broadcast receiving devices link 641.Differences may also be expressed through the use of various dataformats, methods and/or communication means 180 associated with thecombination of centralized scanning systems 560 and/or distributedscanning systems 660 used in combination in a mixed scanning system 700.

Referring to FIG. 7, in other embodiments, a broadcast scanning systemthat utilizes both a centralized scanning system 560 and a distributedscanning system 660 can scan a larger geographical area as compared tousing only a centralized scanning system 560 or only a distributedscanning system 660. For example, in certain embodiments, thecentralized scanning system 560 can only scan a certain geographicalarea due to, for example, the fixed location of the centralized scanningsystem, the strength of the scanning capability, and/or the geographicalterrain being scanned. In certain embodiments, a distributed scanningsystem can scan geographical areas and/or frequencies that a centralizedscanning system cannot. Accordingly, the distributed scanning systemsupplements and/or extends the range of scanning of a centralizedscanning system. In addition, a distributed scanning system resident inbroadcast receiving device 740 could provide cost savings in comparisonto a centralized scanning system 560.

In one embodiment, the broadcast receiving devices 740 communicate theactions they are performing with a server system. In one embodiment,broadcast receiving devices 740 communicate with the central managementsystem 555. In one embodiment, broadcast receiving device 740communicates with other broadcast receiving devices 740. In oneembodiment, each broadcast receiving device 740 operates independently.In one embodiment, broadcast receiving device 740 communicates withbroadcast scanning system 560. In one embodiment, broadcast receivingdevice 740 communicates with other broadcast receiving devices 740. Inone embodiment, broadcast receiving devices 740 utilize internaldatabases as part of their scanning broadcast source 120. In oneembodiment, broadcast receiving devices 740 utilize databases externalto broadcast receiving devices 740 as part of their scanning broadcastsource 120. In one embodiment, broadcast receiving devices 740 utilizeinternal databases and/or databases external to broadcast receivingdevices 740 as part of their scanning broadcast source 120. In oneembodiment, broadcast receiving devices 740 utilize as part of theirscanning broadcast source 120 the same databases as broadcast scanningsystem 560. In one embodiment, broadcast receiving devices 740 utilizeas part of their scanning broadcast source 120, different databases thanthose used by broadcast scanning system 560. In one embodiment,broadcast receiving devices 740 utilize as part of their scanningbroadcast source 120 a mixture of the same databases used by broadcastscanning system 560 and/or discreet databases used by broadcast scanningsystem 560. In one embodiment, the broadcast scanning system 560determines which media streams 121 dedicated scanning systems 765 shouldscan. Determination of which media steam 121 can be scanned by 765 ismade based on determination of the broadcast sources 120 that broadcastreceiving devices 140 and/or broadcast receiving devices 740 arereceiving. In one embodiment, where broadcast receiving device 740 isscanning a media stream 121, and/or where a broadcast receiving device140 receives the same media stream 121, the analysis results of the scanconducted by broadcast receiving device 740 can be provided to broadcastreceiving device 140. In one embodiment, where a broadcast receivingdevice 740 is scanning a broadcast source 120, and/or where thebroadcast receiving device 140 receives the same broadcast source 120,broadcast receiving device 140 could receive some of the analysisresults from a broadcast receiving device 740 that is scanning broadcastsource 120 and/or some of the analysis results from the broadcastscanning system 560. In one embodiment, a broadcast receiving device 740will communicate its analysis results to broadcast scanning system 560.In one embodiment, the central management module 555 will determinewhich broadcast receiving device 740 receiving a particular broadcastsource 120 will communicate its analysis results to broadcast scanningsystem 560 and the broadcast receiving devices 740 that will notcommunicate their analysis results to broadcast source 120. In oneembodiment, the broadcast receiving device 740 selected to scan aparticular broadcast source 120 will communicate its analysis results incombination with other broadcast receiving devices 140 and broadcastreceiving devices 740 receiving the same broadcast source 120. If abroadcast receiving device 740 is selected to scan a particularbroadcast source 120 and/or communicate its analysis results with otherbroadcast receiving devices 140 and/or broadcast receiving devices 740receiving the same broadcast source 120, and/or where its reception ofthe particular broadcast source 120 is interrupted, the centralmanagement module 555 will select another discreet scanning system toscan the broadcast source 120. In one embodiment, the discreet scanningsystem selected to scan the broadcast source 120 will be in a receivingdevice 740. In another embodiment, the discreet scanning system selectedto scan the broadcast source 120 will be in a dedicated scanning system565.

FIG. 8 illustrates a flow diagram of one embodiment of a method ofscanning, capturing, and/or analyzing broadcast streams, and/or storingand/or providing access to the information derived from the analysis.FIG. 8 in addition depicts methods of monitoring the broadcast receivingdevices 140, 640 and/or 740. In FIG. 8, the scanning process begins withblock 805 whereby a broadcast is transmitted by a broadcaster, forexample, the broadcast source 120 and/or the alternate broadcast source130 and/or any other source capable of transmitting a broadcast signal,such as television and/or radio broadcasts, internet streams, Wi-Fibroadcasts, combinations of the same, or the like.

In block 810 of FIG. 8, the broadcast stream 121 that is transmitted bythe broadcast source 120 is scanned by the broadcast scanning system160. The broadcast scanning system 160 can scan the broadcast stream 121using the centralized scanning system 560 illustrated in FIG. 5 and/orthe distributed scanning system illustrated in FIG. 6 and/or acombination of the centralized scanning system 560 and the distributedscanning system illustrated in FIG. 7.

In block 815 of FIG. 8, the system determines whether the scanning wasconducted by the centralized scanning system, the distributed scanningsystem or a combination of the two. If the broadcast stream 121 wascaptured with either the distributed scanning system or a mix of thedistributed scanning system and the centralized scanning system, thenthe system in block 820 retrieves any information that was capturedand/or analyzed by the broadcast receiving systems. Block 825 assesseswhether the broadcast receiving devices 140, 640 and/or 740 completelyanalyzed the broadcast stream 121, and/or whether the retrieved datafrom block 820 is complete. The system subsequently stores the resultsof the analysis in block 850 and/or associates the analysis with thebroadcast stream 121 in block 885 and/or provides the information to thebroadcast receiving devices 140, as will be discussed further below.

If the broadcast stream 121 was scanned by the centralized scanningsystem 560 and/or if block 825 indicates that the results of thenon-centralized scanning systems were incomplete, the broadcast scanningsystem 160 then analyzes the broadcast stream 121 in blocks 830-845. Inblock 830, the stream analysis module 320 of FIG. 3 determines if thebroadcast source 120 encoded any subcarrier data (for example, RBDS,RDS, DARC, combinations of the same, or the like) along with thebroadcast stream 121. In block 825, the broadcast stream 121 is analyzedfor any other streams that may accompany the broadcast stream 121 (forexample, simultaneous internet and/or radio broadcast streams of thesame programming event transmitted by the broadcast source 120 using thealternate transmission module 230). The broadcast scanning system 160then analyzes in block 840 whether the broadcast stream 121 has anyalternative broadcast signals that are broadcast from differentbroadcast sources such as the alternate broadcast system 130. In block845, the system analyzes the broadcast stream 121, for example, bycomparing digital fingerprints of the broadcast stream 121 with digitalfingerprints of media that is already stored in the media storagedatabase 340. In another embodiment in block 845, the system analyzesthe broadcast stream 121 and/or any textual and/or graphical datacontained in a subcarrier and/or other accompanying data channel. Inanother embodiment in block 845, the system analyzes the broadcaststream 121 and/or any related textual and/or graphical data obtainedfrom another source. The results and findings of 805-845 are stored inthe media storage database 340 in block 850.

FIG. 8 further illustrates block 855 whereby the broadcast scanningsystem 160 monitors the broadcast receiving devices 140, 640 and/or 740and/or obtains various types of information from the broadcast receivingdevices 140, 640 and/or 740. In one embodiment, the broadcast scanningsystem 160 receives device broadcast streams 141 as illustrated in FIG.3 using the device monitoring module 330. The device monitoring module330 of the broadcast scanning system 160 can obtain user device statusfrom broadcast receiving devices 140, 640 and/or 740 (for example, on,off, change of station, program associated data selections, userresponses, combinations of the same, or the like.). The broadcastscanning system 160 in addition can obtain preference settings fromusers of broadcast receiving devices 140, 640 and/or 740. In block 880,the broadcast scanning system 160 determines if users of the broadcastreceiving devices 140, 640 and/or 740 are engaged in an activity, and/orstores a report of the activity in the media storage database 340 inblock 850. In one embodiment, the broadcast scanning system 160 asksusers of the broadcast receiving devices 140, 640 and/or 740 forconfirmation before monitoring and/or storing any information related tothe broadcast receiving devices 140, 640 and/or 740.

Block 860 of FIG. 8 also stores any user preference information relatedto the broadcast receiving devices 140, 640 and/or 740. Users ofbroadcast receiving devices can configure their devices to receiveinformation from the broadcast scanning system 160 in various ways. Forexample, users of the broadcast receiving devices 140, 640 and/or 740that receive radio media content from the broadcast stream 121 can optto automatically receive complementary information about the radio mediacontent, such as the name of the media content or segment, length of thesegment, host and/or guest information, ads and/or products of aparticular nature, songs of a particular nature and/or artist,combinations of the same, or the like. In one embodiment, users ofbroadcast receiving system 140, 640 and/or 740 that receive thebroadcast stream 121 can choose to continuously receive from thebroadcast scanning system 160 additional information that the broadcastscanning system 160 extracts from the broadcast stream 121. In anotherembodiment, users of broadcast receiving devices 140, 640 and/or 740 canchoose to receive information from the broadcast scanning system 160based on pre-determined criteria. For example, users of broadcastreceiving systems 140, 640 and/or 740 that receive broadcast stream 121can choose to automatically receive data from alternate broadcast source130 that is associated with broadcast stream 121 if the broadcast stream121 is radio programming. The broadcast scanning system 160 then storesthe user preference data and/or information, if there are any updates,in the media storage database 340 in block 850.

The broadcast scanning system 160 can also process responses to thebroadcast from users of the broadcast receiving systems 140, 640 and/or740, in block 860 of FIG. 8. For example, the analysis of the broadcaststream 121 performed by the broadcast scanning system 160 may indicatethat the media content transmitted in the broadcast stream 121 is a songbased on a digital finger print, but that the title and/or artist of thesong are unknown. The broadcast scanning system 160 may then send datato the broadcast receiving system 140, 640 and/or 740 that presents theuser with options, such as the ability to express an opinion about thesong, conduct a search for additional information about the song, markthe song as a favorite, request identifying information about the artistand/or title of the song when it becomes available, and/or any otherlike user option.

The broadcast scanning system 160 can also be configured to process userresponses received in the broadcast receiving system 140, 640 and/or 740wherein such user responses relate to a particular broadcast stream. Forexample, a broadcast receiving device 140, 640 and/or 740 user may beinterested in additional information that relates to a programming eventtransmitted using a broadcast stream, and/or such additional informationmay comprise but is not limited to concert information, productinformation, album, compilation, artist, title of a song, and/or anadvertisement. The broadcast receiving device 140, 640 and/or 740 maytransmit a response to the device monitoring module 330 of the broadcastscanning system 160 indicating interest. The methods and systems ofprocessing broadcast responses are further described in detail in U.S.patent application Ser. No. 10/806,084, filed Mar. 22, 2004, titled“BROADCAST RESPOND METHOD AND SYSTEM,” which is incorporated byreference in its entirety.

In block 865 of FIG. 8, the system monitors the broadcast receivingdevices 140, 640 and/or 740 to determine whether users of the broadcastreceiving devices 140, 640 and/or 740 are seeking more information aboutthe broadcast stream 121 that they are receiving. If users of thebroadcast receiving devices 140, 640 and/or 740 do not need to receivemore information related to the broadcast stream 121 (for example, thebroadcast receiving devices 140 are able to receive and/or decodesubcarrier signals to identify the broadcast stream 121 themselves), thesystem continues to monitor the broadcast receiving devices 140, 640and/or 740. In another example, the broadcast scanning system 160 canprovide access to analyzed data in real time or delayed manner. If usersof the broadcast receiving devices 140, 640 and/or 740 have a preferencethat they receive information from the broadcast scanning system 160 ata later time, the system in block 865 also continues to monitor thebroadcast receiving devices 140, 640 and/or 740. In another example,block 865 checks preferences of users of the broadcast receiving devices140, 640 and/or 740 to determine whether the system should continuemonitoring the broadcast receiving devices 140, 640 and/or 740 orproceed to the next blocks in order to provide information to thebroadcast receiving devices 140, 640 and/or 740.

With reference to FIG. 8, if the system determines in block 865 thatusers of the broadcast receiving devices 140, 640 and/or 740 areinterested in receiving information that is associated with thebroadcast stream 121 that they are already receiving, the broadcastscanning system 160 in block 870 determines whether the broadcastreceiving devices 140, 640 and/or 740 have already received and/orprocessed identifying information (RBDS, RDS, DARC subcarrier in radiobroadcast, closed caption information in television broadcast,combinations of the same, or the like) in the original broadcast stream121. If users of the broadcast, receiving devices 140, 640 and/or 740have already received and/or processed some identifying information fromthe broadcast stream 121, the users likely have already obtained atleast minimal identification information that is related to thebroadcast stream 121. Therefore, the broadcast receiving system 140 thenenquires in block 880 whether users of the broadcast receiving devices140, 640 and/or 740 are interested in receiving additional informationfrom the broadcast scanning system 160.

If users of the broadcast receiving devices 140, 640 and/or 740 indicatethat they are interested in receiving more information from thebroadcast scanning system 160 in block 880, then broadcast scanningsystem 160 proceeds to find associated info 885. If block 870 indicatesthat users of the broadcast receiving devices 140, 640 and/or 740 do nothave any identifying information that is related to the broadcast stream121, the broadcast scanning system 160 proceeds to block 875 to rescanthe broadcast stream 121. At block 875, the broadcast scanning system160 then analyzes the broadcast stream 121 that is accessed by thebroadcast receiving devices 140, 640 and/or 740 in order to determinewhether the broadcast scanning system 160 has more information that isassociated with the broadcast stream 121 scanned by the broadcastreceiving devices 140, 640 and/or 740 to provide more information aboutthe broadcast stream 121 to the broadcast receiving devices 140, 640and/or 740. If block 875 finds identifying data, then broadcast scanningsystem 160 may proceed to block 880. If block 875 does not findidentifying data, then broadcast scanning system 160 may proceed toblock 885 where the results of the analysis of blocks 830 through 845can be used to locate alternate data as an adjunct to broadcast stream121. In other embodiments, the broadcast scanning system 160 accessesthe device broadcast stream 161 in order to assess the types ofbroadcast streams accessed by the broadcast receiving devices 140, 640and/or 740.

In block 885, the broadcast scanning system 160 analyzes the broadcaststream 121 that is accessed by the broadcast receiving devices 140, 640and/or 740. In other embodiments, the broadcast scanning system 160determines whether the media storage database 340 contains uniqueinformation that is related to the broadcast stream 121 accessed by thebroadcast receiving devices 140, 640 and/or 740 and/or provides thatinformation to the broadcast receiving devices 140 in block 890. Inother embodiments, the broadcast receiving systems 140, 640 and/or 740are configured to simultaneously receive a broadcast stream 121 and/orinformation related to the broadcast stream 121 from the broadcastscanning system 160, and therefore the broadcast scanning system 160associates the results of block 825 and/or block 845 and/or provides theinformation to the broadcast receiving system in block 890 via block885.

In block 890 of FIG. 8, the broadcast scanning system 160 provides tothe broadcast receiving devices 140, 640 and/or 740 information thatidentifies the broadcast stream 121 that is being received by thebroadcast receiving devices 140. In some situations, users of thebroadcast receiving devices 140, 640 and/or 740 can opt to automaticallyreceive information that is associated with the broadcast stream 121and/or the broadcast scanning system 160 pushes the unique media streamto the broadcast receiving devices 140, 640 and/or 740. In otherembodiments, users of the broadcast receiving devices 140, 640 and/or740 opt to retrieve information that is related to the broadcast stream121 at their own convenience. Various configurations are possible forproviding users of the broadcast receiving devices 140, 640 and/or 740access to information that is related to the broadcast stream 121 (forexample, periodic reports, information provided to a particulardemographic and/or geographic group, results of responses by a group ofusers, access via other mediums such as the internet instead of throughthe broadcast receiving devices 140, 640 and/or 740, combinations of thesame, or the like.). The broadcast scanning system 160 then stores anypreference settings and/or matching of the device broadcast stream withany analyzed stream to the media storage database 340 in block 850.

FIG. 9 illustrates an example of the types of stream-related informationthat are stored in the media storage database 340. In some embodiments,the broadcast scanning system 160 stores several types of data relatedto the broadcast stream 121, such as the title of the media content ordata segment transmitted in the broadcast stream 121, the source of thebroadcast stream 121 (for example, the radio or television station,producer, network, frequency, internet server and/or IP address,combinations of the same, or the like), the transmission time of thebroadcast stream, the media or data type (audio, text, video,combinations of the same, or the like) being broadcasted in thebroadcast stream, language and/or any other data related to thebroadcast stream. FIG. 9 illustrates an example of data and/orinformation that can be stored in the media storage database 340, and itwill be recognized that other data and/or information can be maintainedin the media storage database 340. The broadcast scanning system 160 canbe configured with a user interface to facilitate manual searching ofthe database. In other embodiments, users of the broadcast receivingdevices 140, 640 and/or 740 submit search requests based on humanrecollection using a search interface.

FIG. 10 illustrates examples of information that is related to thebroadcast receiving devices 140, 640 and/or 740 that the media storagedatabase 340 maintains. The broadcast scanning system 160 can beconfigured to store several types of data related to the broadcastreceiving devices 140, 640 and/or 740, such as a registrationinformation, a capacity to receive various broadcast streams (analog,digital, wireless, subcarrier, AM, FM, video, combinations of the same,or the like), and/or a status of the device (on, off, inoperable,location, last changed state, combinations of the same, or the like). Inanother embodiment, the media storage database 340 maintains preferencesfor users of the broadcast receiving devices 140, 640 and/or 740 (forexample, display preference, operation preference, combinations of thesame, or the like). In other embodiments, the media storage database 340can store past activities performed by the users of the broadcastreceiving devices 140, 640 and/or 740, for example, purchasing mediacontent that was broadcasted over the broadcast stream, recommendingmedia content and/or media programming to other users, responses toadvertisements, content, voting, polling, subscriptions, pledge driveresponses, combinations of the same, or the like.

With reference to FIG. 9 and FIG. 10, the broadcast scanning system 160is configured in one embodiment to data mine the various types ofinformation stored in the media storage database 340, and/or providethat information to various entities. For example, the broadcastscanning system 160 can retrieve the stored data in a report format toprovide the information, based on preferences as set by users of thebroadcast receiving devices 140, 640 and/or 740, to third partyentities, such as marketing and/or research data processors. In oneembodiment, access to and/or control of the various reports and/orreporting tools is provided through a conditional access web portaldesigned for such a purpose. In one embodiment, the system enablesoutput of each report in the form of physical printing to paper, and/ordigital printing using systems such as Adobe Acrobat, or the like.

With reference to FIG. 9, in one embodiment, the broadcast scanningsystem 160 provides device usage, preferences, historical analysis,combinations of the same, or the like to the broadcast receiving devices140, 640 and/or 740. In another embodiment, the broadcast scanningsystem 160 provides various usage patterns of the broadcast receivingsystems (most popular, recommended, peer to peer sharing, accessedbroadcast streams 121, combinations of the same, or the like.) to thebroadcast sources 120. In one example, the information is provided in ananonymous format. In yet another example, the broadcasting scanningsystem 160 provides the mined information to third party entities suchas marketing firms, research universities, wireless service providers,content programmers, combinations of the same, or the like. In somecircumstance third party entities could be represented by third partydatabase 143.

With reference to FIG. 11, the various embodiments of the broadcastscanning system 160 may be used in a variety of systems and contexts.FIG. 11 illustrates such an example context. In the illustrated example,a plurality of broadcast sources 120 broadcast various media content ina plurality of broadcast streams 121, which are received by thebroadcast scanning system 160. The broadcast scanning system 160 may beexpressed in the form of any of the embodiments of the broadcastscanning system that are disclosed herein. In one embodiment, thebroadcast scanning system 160 is configured to: analyze the broadcaststreams 121 received from the plurality of broadcast sources 120 toobtain and/or identify the media content transmitted in the broadcaststreams; obtain additional information about the media content ifavailable; and/or assign a unique event identifier specific to thebroadcast of each specific broadcast stream and/or media segment. In oneembodiment, the broadcast scanning system 160 transmits the unique eventidentifier to the media association system 1102. Methods and systems ofhow the unique event identifier is associated with advertising media aredisclosed in detail in co-pending U.S. patent application Ser. No.12/366,535, filed Feb. 5, 2009, titled “SYSTEM AND METHOD FORADVERTISEMENT TRANSMISSION AND DISPLAY,” which is incorporated byreference in its entirety. In one embodiment, the broadcast scanningsystem 160 stores the unique event identifier in the unique eventidentifier database 1111. In one embodiment, the unique event identifierthat is stored in the unique event identifier database 1111 isdatabase-linked with the corresponding and/or associated content and/orcontent identifiers that are stored in the content database 1103.

Referring to FIG. 11, in one embodiment, the broadcast scanning system160 further broadcasts and/or transmits over a network to the broadcastreceiving systems 140. In one embodiment, the unique event identifier istransmitted through the internet and/or over a wireless/cellular networkto a mobile device operating a software application (for example, a JavaJ2ME, WiFi, BREW, Symbian, Mac OSX, Windows Mobile, combinations of thesame, or the like, software application) capable of accessing theinternet through the wireless/cellular network. After a broadcastreceiving system 140, 640 and/or 740 receives a broadcast stream from abroadcast source 120, and/or receives a corresponding unique eventidentifier from the broadcast scanning system 160, the broadcastreceiving system 140, 640 and/or 740 is configured to receive a userselection or user input. After the broadcast receiving system 140, 640and/or 740 receives the user selection or user input, the broadcastreceiving system 140, 640 and/or 740 is configured, in one embodiment,to transmit to the broadcast response and business system 1101 at leastthe unique event identifier and/or a user identifier.

In further reference to FIG. 11, in one embodiment, the broadcastresponse and business system 1101 is configured to connect to the uniqueevent identifier database 1111 in order to perform a database lookup ofthe received unique event identifier. From the database lookup, thebroadcast response business system 1101 can determine the broadcastsource 120, the time and/or date of the broadcast, and/or the contentassociated with the broadcast. The broadcast response business system1101 is configured in one embodiment to locate in the content database1103 the content and if available, the content identifier associatedwith the broadcast based on the database lookup. In one embodiment, thebroadcast response business system 1101 is configured to store the userselection and/or the user response in the response database 1105.

With reference to FIG. 11, if the user selected to purchase the contentassociated with the unique event identifier, then the broadcast responseand business system 1101 is configured in one embodiment to verify theuser identifier in the consumer database 1107, which stores, forexample, user name, address, demographic data, and/or other similar userinformation. The broadcast response business system 1101 in oneembodiment is configured to store the purchase event in the purchasedatabase 1109. The purchase database 1109 is configured to store, forexample, past user purchases, user credit card information, user billinginformation, user preferences, user telephone information for billingthe user cellular account, age, gender, location, mobile operator,favorite media streams, preferred language, cultural or politicalaffinities, receiving device model, combinations of the same, or thelike. In one embodiment, the broadcast response business system 1101 isconfigured to transmit the purchase selection to the fulfillment system1113. The fulfillment system 1113 can also be configured to ship from asupplier 1117 to the user a physical product, for example, a CD and/orbook, and in other embodiments, the fulfillment system 1113 isconfigured to inform the user where to download the digital content,and/or electronically transmits the content to the user.

Referring to FIG. 11, in one embodiment, the data mining and reportingsystem 1115 is configured to connect to the content database 1103, theresponse database 1105, the consumer database 1107, the purchasedatabase 1109, and/or the unique event identifier database to conductdata mining and/or reporting. In one embodiment, the data mining andreporting system 1115 is configured to identify based on the uniqueevent identifier the broadcast source, the broadcast segment, and/or thetime and/or date of the broadcast segment that produced the most userresponses in a given period. In certain embodiments, the variousdatabases 1103, 1105, 1107, 1109, and/or 111 may be combined into one ormore databases.

As illustrated in FIG. 11, in one embodiment, the media associationsystem 1102 is configured to receive the unique event identifier fromthe broadcast scanning system 160. The media association system 1102 inone embodiment is configured to identify the content associated with theunique event identifier by performing a database lookup using the uniqueevent identifier database 1111 and/or cross reference the contentdatabase 1103. The media association system 1102 can also be configuredto compare the content with a database to determine whether anassociated media stream and/or content should be transmitted tobroadcast receiving systems 140, 640 and/or 740 that are displayingand/or outputting the content associated with the unique eventidentifier. For example, the media association system 1102 is configuredin one embodiment to display an advertisement next to a graphicrepresenting a specific music artist and/or advertiser featured in thecontent received from a broadcast source 120 and outputted on thebroadcast receiving system 140, 640 and/or 740. Methods and systems ofhow the unique event identifier is associated with advertising media aredisclosed in detail in co-pending U.S. patent application Ser. No.12/366,535, filed Feb. 5, 2009, titled “SYSTEM AND METHOD FORADVERTISEMENT TRANSMISSION AND DISPLAY,” which is incorporated byreference in its entirety.

Conditional language, such as, among others, “can,” “could,” “might,” or“may,” unless specifically stated otherwise, or otherwise understoodwithin the context as used, is generally intended to convey that certainembodiments include, while other embodiments do not include, certainfeatures, elements and/or steps. Thus, such conditional language is notgenerally intended to imply that features, elements and/or steps are inany way required for one or more embodiments or that one or moreembodiments necessarily include logic for deciding, with or without userinput or prompting, whether these features, elements and/or steps areincluded or are to be performed in any particular embodiment.

In certain embodiments, the acts, methods, and processes describedherein are implemented within, or using, software modules (programs)that are executed by one or more general purpose computers. The softwaremodules may be stored on or within any suitable computer-readablemedium. It should be understood that the various steps may alternativelybe implemented in-whole or in-part within specially designed hardware.The skilled artisan will recognize that not all calculations, analysesand/or optimization require the use of computers, though any of theabove-described methods, calculations or analyses can be facilitatedthrough the use of computers.

Although the foregoing systems and methods have been described in termsof certain preferred embodiments, other embodiments will be apparent tothose of ordinary skill in the art from the disclosure herein.Additionally, other combinations, omissions, substitutions andmodifications will be apparent in view of the disclosure herein. Whilecertain embodiments of the inventions have been described, theseembodiments have been presented by way of example only, and are notintended to limit the scope of the inventions. Indeed, the novel methodsand systems described herein may be embodied in a variety of other formswithout departing from the spirit thereof. Further, the disclosureherein of any particular feature, aspect, method, property,characteristic, quality, attribute, element, or the like in connectionwith an embodiment can be used in all other embodiments set forthherein. Accordingly, other combinations, omissions, substitutions andmodifications will be apparent in view of the disclosure herein.

1. (canceled)
 2. A system for determining response activity corollary toa presentation of a media content obtained from a broadcast source, thesystem comprising; one or more computer readable storage devicesconfigured to store a plurality of computer executable instructionscomprising at least a stream scanner module; and one or more hardwarecomputer processors in communication with the one or more computerreadable storage devices and configured to execute the plurality ofcomputer executable instructions in order to cause the system to:receive a media content communication from the broadcast source usingthe stream scanner module associated with a receiving device; obtain athird party unique identifier specific to an instance of the mediacontent communication; retrieve at least one user identifier respondentto the presentation of the media content communication corollary to thethird party unique event identifier, the at least one user identifierrespondent to the presentation being unique to a user; and storeaggregated data of response activity associated with the at least oneuser identifier respondent to the presentation of the media contentcommunication corollary to the third party unique event identifier. 3.The system of claim 2, wherein the one or more computer readable storagedevices configured to store a plurality of computer executableinstructions comprising at least a stream scanner module includes atleast one of the following: the receiving device, a personal computer, acellular phone, a computer system featuring GPS, a portable computingdevice, a server, a local area network of individual computers, aninteractive kiosk, a personal digital assistant, cable and satelliteboxes, broadcast receiving devices.
 4. The system of claim 2, whereinthe third party unique identifier specific to the instance of the mediacontent communication is obtained using at least one of the following:peer to peer sharing, a pubic broadcast, a private communication, an IPbased connection, a wireless connection, a wired connection, a thirdparty.
 5. The system of claim 2, wherein the third party uniqueidentifier specific to the instance of the media content communicationidentifies at least one of the following: the media contentcommunication, a source of the third party unique identifier, time anddate of a respondent broadcast segment, a third party unique identifierdatabase.
 6. The system of claim 2, wherein the at least one useridentifier respondent to the presentation of the media contentcommunication corollary to the third party unique event identifieridentifies at least one of the following: name, address, demographicdata, telephone billing information, cellular account, age, gender,location, mobile operator favorite media streams, peer to peer sharing,preferred language, cultural affinities, political affinities, receivingdevice identification, response activity, assessed broadcast streams. 7.The system of claim 2, wherein the receipt of the media contentcommunication from the broadcast source using the receiving deviceassociated with the stream scanner module identifies the broadcastsource.
 8. The system of claim 2, wherein the aggregated data ofresponse activity associated with the at least one user identifierrespondent to the presentation of the media content communicationcorollary to the third party unique event identifier comprises at leastone of the following: user preferences, receiving device usage, mostpopular media content, most popular broadcast streams, recommended mediacontent, recommended broadcast streams, peer to peer sharing,advertisement.
 9. The system of claim 2, wherein the stream scannermodule is configured to receive at least one of the following: aspecific broadcast stream from a broadcast source, a plurality ofbroadcast streams from a plurality of broadcast sources, an AM streamtransmission, an FM stream transmission, an In-band-on-channel streamtransmission, an Internet Protocol data stream transmission, a satellitestream transmission, a Digital Radio Mondiale stream transmission, aWiFi stream transmission, Analog Television stream transmission, aDigital Television stream transmission, a wireless stream transmission,a peer to peer stream transmission, a cable stream transmission,combination of the aforementioned.
 10. The system of claim 2, whereinthe aggregated data of response activity associated with the at leastone user identifier respondent to the presentation of the media contentcommunication corollary to the third party unique event identifiercomprises at least one of the following: storage in a database internalto the receiving device, storage in a database external to the receivingdevice, identification of a database entry in a storage database usingthe third party unique identifier, a storage database module configuredto store in the storage database at least the third party unique eventidentifier and the database entry, wherein the third party unique eventidentifier is database linked to the database entry, the storagedatabase indexes scanned broadcast streams with the third party uniqueevent identifier and/or a database pointer.
 11. The system of claim 2,wherein the aggregated data of response activity comprises at least oneof the following: geographic location of a receiving device respondentto the presentation of the media content, time of day, a status changeof the receiving device, changing reception of the receiving device fromone broadcast source to another, a vote about a media content eventtransmitted in a broadcast stream.
 12. A method of reportingpresentation activity corollary to an instance of media contentassociated with a broadcast stream associated with a broadcast sourcecorollary to a third party unique event identifier specific to theinstance of the media content, under control of a computing deviceconfigured with specific computer-executable instructions, the methodcomprising: configuring a stream scanner module to receivecommunications from the broadcast source; obtaining the third partyunique event identifier specific to the instance of media contentassociated with the broadcast stream associated with the broadcastsource; retrieving a plurality of user identifiers obtained corollary toa presentation of the broadcast stream corollary to the third partyunique event identifier specific to the instance of the media content,each of the plurality of user identifiers being unique to a user; andpresenting a report of presentation activity corollary to the mediacontent associated with the broadcast stream using at least one useridentifier and the third party unique event identifier specific to theinstance of the media content.
 13. The method of claim 12, wherein thethird party unique event identifier specific to the instance of themedia content is obtained in relation to a transmission of the instanceof the media content.
 14. The method of claim 12, wherein the instanceof the media content is transmitted using at least one of the following:peer to peer sharing, a pubic broadcast, a private communication, anInternet Protocol based connection, a wireless connection, a wiredconnection, a third party.
 15. The method of claim 12, wherein theinstance of the media content is received via a third party source ofthe third party unique event identifier specific to the instance of themedia content.
 16. The method of claim 12, wherein the third partyunique event identifier specific to the instance of the media contentincorporates multiple components.
 17. The method of claim 16, wherein atleast one of the multiple components includes an internet address. 18.The method of claim 12, wherein the broadcast stream is transmittedusing at least one of the following: peer to peer sharing, a pubicbroadcast, a private communication, an Internet Protocol basedconnection, a wireless connection, a wired connection, a third party.19. The method of claim 12, wherein the broadcast source is an InternetProtocol based connection server.
 20. The method of claim 12, whereinthe third party unique event identifier specific to the instance of themedia content is stored in a database.
 21. The method of claim 12,further comprising receiving a response to the instance of the mediacontent, the response comprising at least the third party unique eventidentifier specific to the instance of the media content and at leastone of the plurality of user identifiers being unique to a user.